华为OD技术面八股文_C++_02

华为OD技术面八股文_C++_02

文章目录

指针和引用的区别

  1. 是否可变:指针所指向的内存空间在程序运行过程中可以改变,而引用一旦绑定,不能改变。
  2. 是否可以为空:指针可以为空,引用必须绑定对象。
  3. 是否可以为多级:指针可以有多级,引用不能。
  4. 是否可作为容器元素:指针可以,引用不能。
  5. 是否支持算法运算:指针支持,引用不能。

野指针是什么?怎么导致的?怎么避免?

野指针:指向不确定、非法或者已经失效内存的指针。

产生野指针的原因:

  1. 指针未初始化
// 野指针 int* p; 
  1. 释放之后继续使用
int* p = new int(10); delete p; *p = 20; 
  1. 函数返回局部变量地址:局部遍历在栈上,函数结束,栈帧销毁,内存失效。
int* foo() { int x = 10; return &x; } int* p = foo(); cout << *p; 
  1. 指针越界访问: 访问非法内存,野指针行为。
int arr[5]; int* p = arr; p += 10; *p =

Read more

在 Ubuntu 环境下玩转 Python:从环境配置到实战开发全指南

在 Ubuntu 环境下玩转 Python:从环境配置到实战开发全指南

前言 Ubuntu 作为最流行的 Linux 发行版之一,凭借其稳定的性能、丰富的软件生态和开源特性,成为 Python 开发的理想选择。无论是数据分析、Web 开发还是人工智能领域,Ubuntu 都能为 Python 提供高效的运行环境。本文将从基础环境配置出发,逐步深入到 Python 开发的核心场景,帮助开发者在 Ubuntu 系统中快速搭建稳定、高效的 Python 开发环境,并通过实战案例掌握关键开发技能。 一、Ubuntu 系统下 Python 环境基础配置 1.1 了解 Ubuntu 预装的 Python 版本 Ubuntu 系统默认会预装 Python,但可能同时存在 Python 2.x(部分旧版本系统)和 Python

By Ne0inhk

Python 小白 Debug 全指南:从 “看报错就懵” 到 “1 分钟定位 bug”(万字版)

【个人主页:玄同765】   大语言模型(LLM)开发工程师|中国传媒大学·数字媒体技术(智能交互与游戏设计)   深耕领域:大语言模型开发 / RAG知识库 / AI Agent落地 / 模型微调   技术栈:Python / LangChain/RAG(Dify+Redis+Milvus)| SQL/NumPy | FastAPI+Docker ️   工程能力:专注模型工程化部署、知识库构建与优化,擅长全流程解决方案         专栏传送门:LLM大模型开发 项目实战指南、Python 从真零基础到纯文本 LLM 全栈实战、 从零学 SQL + 大模型应用落地、大模型开发小白专属:从 0 入门 Linux&Shell       「让AI交互更智能,让技术落地更高效」 欢迎技术探讨/项目合作!

By Ne0inhk
【Python 镜像下载网址】

【Python 镜像下载网址】

几个常用的国内 Python 镜像下载网址,可以加快 Python 安装包和相关工具的下载速度: 1. 清华大学镜像站 * Python 官方版本下载 https://mirrors.tuna.tsinghua.edu.cn/python/ * PyPI 镜像(pip 配置加速) https://pypi.tuna.tsinghua.edu.cn/simple 2. 阿里云镜像站 * Python 官方版本下载 https://mirrors.aliyun.com/python/ * PyPI 镜像(pip 配置加速) https://mirrors.aliyun.com/pypi/simple/ 3. 中国科学技术大学镜像站(USTC)

By Ne0inhk

uv虚拟环境管理:venv创建、激活与Python版本指定

uv虚拟环境管理:venv创建、激活与Python版本指定 【免费下载链接】uvAn extremely fast Python package installer and resolver, written in Rust. 项目地址: https://gitcode.com/GitHub_Trending/uv/uv 引言:虚拟环境管理的痛点与解决方案 在Python开发中,虚拟环境(Virtual Environment)是隔离项目依赖的关键工具。传统工具如venv和virtualenv存在创建速度慢、版本管理繁琐等问题。uv作为一款用Rust编写的极速Python包管理器,提供了更高效的虚拟环境管理方案。本文将详细介绍如何使用uv创建、激活虚拟环境,并灵活指定Python版本,帮助开发者解决环境一致性和版本控制的痛点。 读完本文后,你将能够: * 使用uv快速创建虚拟环境 * 在不同操作系统下激活虚拟环境 * 灵活指定和管理Python版本 * 解决多项目环境冲突问题 * 利用uv的高级特性提升开发效率 uv虚拟环境基础 什么是虚拟环境 虚拟环境(

By Ne0inhk