C语言中关于指针的数据类型和指针运算的小结

  1. 有关指针的数据类型小结

记忆诀窍:
容易混淆的几个int *p[n] 、int (*p)[n],其中int *p[n]是一个数组,数组的元素是指针;int (*p)[n]是个指针,是一个指向二维数组的指针或者分解为长度为n的一维数组。

2. 指针运算小结
  • 指针变量加(减)一个整数:
    如 p++、p--、p+i、p-i 等,指的是将该指针的原值和它指向的变量所占的内存管理单元字节数加(减)。
  • 指针变量赋值:将一个变量的地址赋给一个指针变量
    如: p=&a;将变量a的地址赋值给p;
        p=array;将数组array的首地址赋值给p;
       p=&array[i];将数组array的第i个元素的地址赋值给p;
    p=max; max是已定义的函数,将max的入口地址赋值给p;
    p1=p2; p1和p2都是指针变量,将p2的值赋值给p1,也就是将p1指向到p2所指向的存储空间。
  • 指针变量可以有空值,即该指针变量不指向任何变量: p=NULL;
  • 两个指针可以相减:前提是两个指针必须指向同一个存储空间(比如指向同一个数组的元素),则两个指针只差就是两个指针之间的元素个数。
指针在C语言是个重要的内容,目前对这个理解还是比较浅,只能整理出平时容易混淆的概念,多加区别!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值