c语言指针学习笔记

指针变量就是存放内存地址的变量。c语言中使用 int *pa; 的方式来定义指针。

`
main()

int a = 10, b=20, s, t, *pa, *pb,*pc,*pd;
pa = &a;
pb=pa;
s=*pb;
pc=&b;

*pc = *pb;
t=a;

int ss[10]  = {0,1,2,3,4,5,6,7,8,9};
int *ps;
ps=ss;
for(int i=0;i<10;i++){
	ps=ps+1;
}

`

  1. 定义指针变量时,* 只是指明这个变量是指针变量;
  2. 使用指针变量时,* 代表【取内容】。
  3. &代表【取地址】。
    ————————————————————————————————————————————————————————
    具体语句解析:

int a=10,b=20, *pa, *pb; 定义了int型变量a、b 和指针变量pa、pb,pa和pb的类型是(int*)。

pa=&a; 在使用中 pa 类型就是(int), &a类型也是(int)。 pa这个指针变量中存放的是a的地址:0x62fde8.

pb=pa;指针pb中存放的内容也改成了地址0x62fde8。

s=*pb;使用中 * 代表【取内容】,*pb 是int型,就是取出pb所存地址中的值,即地址 0x62fde8 中的a值10。

pc=&b; *pc = *pb;
pc=&b;给指针pc一个地址值,pb就是取出地址0x62fde8中的值10,pc就是取出地址0x62fde4中的值20. *pc = *pb; 直接把地址中的值交换,各自保存的地址值不变(这种交换只能在两个指针都有具体数值后才能进行)。

ps=ps+1;在数组的循环中,ps=ps+1; 代表指针向后移动一个元素。

原文地址:https://www.cnblogs.com/sunshine233/p/13957638.html