今天学的是传说中的c语言灵魂指针。。

今天就让我带大家走进传说中的指针吧。。。


1.首先了解数据访问方式,数据访问分为直接访问和间接访问。直接访问就是直接访问内存单元里的数据。

例如int a = 3,a恒等于内存单元,这就是直接访问的一种方式,间接访问通过寻找内存单元地址,来访问内存单元里存放的数据,间接访问在指针中随处可见,指针就是间接访问的常用方式。

2.指针变量

所谓指针变量就是存放内存地址的变量。

指针类型转换符%p,如何打印指针变量代码:printf("%p", p  );输出结果为一个16进制的数

3.取地址运算符与取值运算符,这是一对相反的操作符

看如下一行代码。
4.指针的算术运算符
int a = 3;
int *p = &a;
p++;//向高位移动4个字节
p--;//向低位移动4和字节       指针类型决定指针移动几个字节,而且指针类型决定根据
地址取内容的长度
5.
int a = 3;
int *p = &a;

printf("%d",  a);

//输出的值为2

printf("%d", *p);

//printf输出的2

第一行开始定义指针变量时int *p,其实指针变量是p而不是*p这里的*号只起修饰作用而且可以把

(int *)看作一种数据类型整形指针,而且有的定义指针是代码写成这样,

比如: int* p,这样看起来就比较明了 int*是一种数据类型 。

6.数组的内存地址

用连续内存空间存储数据的构造类型。

7.指针与数组

数组名可以用指针变量代替

8.指针与数组的区别

内存空间不同

指针:至于操作系统位数有关。

数组:与元素个数和类型有关

数组名是常量地址不能重指向

而指针可以重指向

指针sh是不能算出数组元素的元素个数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值