C语言笔记——指针

来源:互联网 发布:iphone照片拷贝到mac 编辑:程序博客网 时间:2024/06/14 15:03

指针是用于存放另一个变量的内存地址的变量,用&取地址,用*取值。

1. 指针赋值一定要用取地址符&,不能直接赋值内存地址。

int ex = 8;  int * ptr_ex = &ex; 等价于

int ex = 8;  int * ptr_ex;  ptr_ex = &ex;


2. 使用指针修改变量值。

* ptr_ex = 888;

3. 存放指针的地址。

int ** ptr_ex2 = &ptr_ex;


4. 使用指针表示一维数组a第i个元素。【int * ptr_a = a】

地址&a[i]: a + i / ptr_a + i  

a[i]/ptr_a[i]:  * (a + i) * (ptr_a + i)

5. 使用指针表示二维数组aa第i行第j列元素。【int (* ptr_aa)[列数] = aa】

------先行后列------

aa[i][j]/ptr_aa[i][j]:  *(aa[i] + j) / *(ptr_aa[i] + j) /  *(*(aa + i) + j)*(*(ptr_aa + i) + j)


6. %p:指针占位符(内存地址大写),%x:十六进制占位符(内存地址小写),两者本质无差别,都是打印出内存地址。


7. 值的引用传递。

在调用函数时将实际参数的地址传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数。

原创粉丝点击