一、变量与内存
内存的最小单元是字节(8位),每个变量都有一个地址,变量int的内存大小是4个字节。
引用
int a = 10;
int* pa= &a;
定义一个变量pa,类型为int*,初始值为&a;称int*为指针类型,pa指向了一个int型变量,pa为指针类型的变量(简称“指针”)
*pa = 8;(*pa读写内存地址的值)
二、指针和数组
数组可以看成一块内存,数组名就是内存的地址(首地址),然后通过指针访问。
引用
int* p = arr;相当于int* p = &arr[0];
p += 1;后移1个元素,取arr[1]的值。
引用
p = arr + 3 (p = &arr[3]),
表示p指向arr数组的第四个元素。
三、指针作为函数的参数
1、传递指针作为参数
引用
void test(int* p);
调用:int a = 0; test(&a);
2、传递数组作为参数,需要传递首地址和长度。
引用
void max_min(int* p,int len,int* pmax,int* pmin)
{
int _max=p[0];int _min=p[0];
for(int i=1;i<len;i++)
{if(p[i]>_max) _max=p[i]; if (p[i]<_min) _min=p[i];}
*pmax = _max; *pmin = _min;
}
3、把指针传给函数有什么作用?
1)效率问题:传值与传地址。
2)返回多个值:函数返回多个值,必须使用指针参数。
注:int avg(int* p,int len)等同于 int avg(int p[],int len);
4、const指针
指定的内存只能读,不能写。
int test(const int* p,int len)
四、何安全使用指针
用指针的时候要清楚1)指向变量、数组、指向零;2)是否失效、越界。3)空指针和野指针。
分享到:
相关推荐
C++指针 数组 内存释放 相关说明
C++指针介绍.ppt C++指针介绍.ppt C++指针介绍.ppt C++指针介绍.ppt C++指针介绍.ppt C++指针介绍.ppt C++指针介绍.ppt C++指针介绍.ppt C++指针介绍.ppt C++指针介绍.ppt C++指针介绍.ppt C++指针介绍.ppt C++指针...
c_c++指针详解 c_c++指针详解 希望对大家理解指针有帮助
C++指针精髓 笔记
C++指针.ppt C++指针.ppt
C++指针的几个经典应用,帮助你深入了解C++指针的用法
在网上搜集到的C++指针资料,打包上传上来给大家下
C++ 指针用ppt详细描述,指针是难点,次文章使用ppt描述简单易学
C++ 指针 深入 教程,关于指针的重点难点,深入的讲解
c++指针讲义,是PPT文档。讲解详细,通俗易懂。
对于初学者来讲指针这个东西很烦人,理解起来并不难,但是在实际开发中该如何灵活的使用指针却是个难点。特分享《C/C++指针经验总结——经典教程》,这个教程让你更快更透彻的知晓C++指针的奥秘:)
C_C++指针经验总结.pdfC_C++指针经验总结.pdfC_C++指针经验总结.pdf
C/C++指针详解、学习建议,包含PPT和WORD共三份文档。
关于C++ 指针的讲解 (PS:这个是试试能不能上传)
c++指针数组.rarc++指针数组.rarc++指针数组.rarc++指针数组.rarc++指针数组.rarc++指针数组.rarc++指针数组.rarc++指针数组.rar
C++指针详解 C++指针详解 C++指针详解 C++指针详解 C++指针详解 C++指针详解
c++指针方面的心得
C++ 指针 实现迷宫 程序代码 C++ 指针 实现迷宫 程序代码 C++ 指针 实现迷宫 程序代码 C++ 指针 实现迷宫 程序代码
C++ 指针讲解 C++ 指针讲解C++ 指针讲解C++ 指针讲解C++ 指针讲解C++ 指针讲解C++ 指针讲解C++ 指针讲解C++ 指针讲解C++ 指针讲解C++ 指针讲解C++ 指针讲解
C++指针C++指针C++指针C++指针C++指针C++指针C++指针C++指针C++指针C++指针C++指针