当前位置: 首页 > news >正文

【c++】指针的学习

指针是C++中非常重要的概念,理解指针的使用可以使程序更高效,并且可以处理更加复杂的数据结构。
指针是一个变量,它存储了另一个变量的地址。通过指针访问这个变量可以提高程序的效率,尤其是在处理大型数据结构时。

在C++中,定义指针时需要使用*来声明一个指针变量。例如:

int* ptr;

这个指针变量可以指向一个整数类型的变量,可以使用&运算符获取这个变量的地址。例如:

int num = 10;
int* ptr = #

这里定义了一个整型变量num,并把它的地址赋给了指针变量ptr。

现在可以使用指针变量ptr来访问num的值,例如:

cout << *ptr << endl; //输出10

使用指针变量可以通过间接引用操作符*来访问指针所指向的变量。

指针还可以指向动态分配的内存。例如:

int* ptr = new int;
*ptr = 20;

这里使用new运算符动态分配了一个整数类型的内存,并把这个内存的地址赋给了指针变量ptr。

现在可以使用ptr访问这个新分配的内存,例如:

cout << *ptr << endl; //输出20

需要注意的是,动态分配的内存需要使用delete运算符来释放,如下所示:

delete ptr;

指针还可以指向数组。例如:

int nums[5] = {1, 2, 3, 4, 5};
int* ptr = nums;

这里把数组nums的首地址赋给了指针变量ptr。

现在可以使用ptr来访问这个数组,例如:

cout << *ptr << endl; //输出1
ptr ++;
cout << *ptr << endl; //输出2

使用指针可以遍历数组,如下所示:

for(int i = 0; i < 5; i++){cout << *(ptr + i) << endl; //输出1, 2, 3, 4, 5
}

注:需要注意的是,指针变量不要指向一个已经被释放的内存地址,否则会出现未定义的行为。此外,在使用指针时应该尽量避免指针的乱用,以免出现内存泄漏或者崩溃的问题。

http://www.lryc.cn/news/31435.html

相关文章:

  • 华为OD机试题,用 Java 解【水仙花数】问题
  • 【Linux】-- 基本指令
  • JavaScript 中的 String 类型 模板字面量定义字符串
  • 我国防疫数据报告,2022年广东花费711亿,北京人均支出第一
  • OpenCV-Python学习(22)—— OpenCV 视频读取与保存处理(cv.VideoCapture、cv.VideoWriter)
  • 2023-03-05力扣每日一题
  • 真正的IT技术男是什么样的?
  • 在函数中,用指针接收就可以改变相应的内容吗??
  • Java+ElasticSearch+Pytorch实现以图搜图
  • 【C语言学习笔记】:指针
  • 微信小程序搭建流程
  • 嵌入式 Linux进程间的通信--信号
  • Vue3 核心模块源码解析(中)
  • 华为OD机试题 - 剩余可用字符集(JavaScript)| 含思路
  • 焦虑的根源
  • 1.认识网络爬虫
  • 【论文速递】WACV 2023 - 一种全卷积Transformer的医学影响分割模型
  • 加密图像的脆弱水印及应用
  • python线上商城网站项目前台和后台源码
  • PowerShell 实现企业微信机器人推送消息
  • IDEA集成Git就是这么简单
  • springBoot 事务基本原理
  • HBuilderX无线连接真机
  • idea初学笔记
  • C++核心编程<类和对象>(4)
  • 编写http workshop脚本从网页缓存里解析音乐
  • 当数字孪生遇上轨道交通,会有什么新发展?
  • 原理底层计划--分布式事务
  • Hive总结
  • docker环境下安装jenkins