C语言笔记03 :关于指针的补充

指针 就是地址 大小就是4个字节(32位系统)
如果 是64位系统 就是8个字节 切记
这个博主写的很详细,关于指针的所占字节大小的原因
X86\X64平台下指针占用几个字节?

下图这是用x86环境测试
这是用x86运行
结果如下:
X86环境下指针大小为4个字节
x86下指针大小

这是当运行环境更改为64位时候 所占字节大小为8
x64环境下字节大小
指针的使用:p = &a *p = 常量或变量
地址是唯一的
野指针:没有进行初始化以及为赋值的指针,由编译器随机进行赋值
解决:在初始化时给一个初值可以是NULL(标识地址0x00000000)
段错误:访问不允许访问的地址、通过指针修改不可修改的值

指针的运算:指针-指针 结果为long类型
指针+数字 地址向高地址方向偏移
指针-数字 地址向低地址方向偏移
指针++/指针–:改变了原有的指针的指向
关系运算符 > <
比较高低地址用的
关于C语言中申请空间malloc和释放空间frew
要加入头文件stdlib

注意:free过后要把指针指为空

指针:
int const *p : 指向可以改变 但是 指向空间的内容不能变;
int * const p:指向空间的内容可以改变但指向不可以改变
const int *const p:都不可以改;(没有意义)

用函数指针连接四个字符串操作函数
在这里插入图片描述
指针数组
int *p[5] 本质上是一个装地址的数组,遵循数组的用法,数据遵循指针的用法,作用将分散的地址连续起来
数组指针(行指针)
本质是一个指向有n个空间数组的指针

  • 暂时先写到这 ,过2天再看看关于C指针的错题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值