C语言指针
可以使用&运算符找到变量保存在内存中的位置
int x = 1; printf("x的内存地址是"%p\n",&x)%p格式符将地址以16进制格式输出。 &x将找到变量x的地址。一般我们会使用一个指针变量保存这个地址。
指针变量是一个用来保存存储器地址的变量,当声明指针变量时,需要说明指针所指向的地址中保存的数据的类型:
int *addr_x = &x;声明一个int类型的指针变量addr_x,&x或者x变量的地址,并保存这个地址。
根据存储器的地址读取保存在那里的数据,可以使用*运算符
int v_s = *addr_x&运算符是接受一个数据,然后获取其内存地址。 *是接收一个地址,然后获取这个数据的值。 这两个运算符正好相反。
C语言中的指针变量还可以进行运算,可以使用*运算符。 将指针变量放在赋值运算符左边。
*addr_x = 100;数组变量可以用作指针 数组的指针指向的是数组第一个元素。 由此可以得到下面的等式
int d [] ={4,2,3} d[0]==*d地址是数字,所以可以进行指针运算,如果找存储器的下一个地址,可以增加指针的值。
d[i]=*(d+i)数组的索引从0开始,正是为了方便找到元素的地址单元,指针需要加上的那个数字。 同时数组的索引实际表示的是当前元素到第一个元素的偏移量,可不就是0开始么。
转载于:https://www.cnblogs.com/c-x-a/p/11523151.html
相关资源:JAVA上百实例源码以及开源项目