C语言指针的详解和应用

一、指针简介

指针(Pointer)是C语言的一个重要知识点,其使用灵活、功能强大,是C语言的灵魂。指针与底层硬件联系紧密,使用指针可以操作数据的地址,实现数据的间接访问。指针是C语言区别于其他高级语言的关键特性之一。

二、计算机存储机制

在计算机系统中,小端(Little Endian)和大端(Big Endian)是两种不同的字节序(Byte Order)方式,它们定义了多字节数据在内存中的存储顺序。了解这些概念对于操作系统、网络协议和低级编程(如嵌入式系统)非常重要,数组的存储不受大小端的影响,例如数组是char型数组,其数据就按照顺序依次存储,但如果数组是short型的,那么其存储顺序虽然不受影响,但是每个元素的存储方式还是要按照大小端的定义来存储。

小端(Little Endian)

小端模式是将数据的低字节存储在内存的低地址处,而高字节存储在内存的高地址处。换句话说,数据的最低有效字节在最前面(最低地址),最高有效字节在最后面(最高地址)。

理解指针的基础是理解计算机的存储机制。计算机通过内存地址来访问数据,变量在内存中占据特定的地址空间。例如:

int a = 0x12345678;
short b = 0x5A6B;
char c[] = {0x33, 0x34, 0x35};
小端存储模式 

大端(Big Endian)

大端模式是将数据的高字节存储在内存的低地址处,而低字节存储在内存的高地址处。换句话说,数据的最高有效字节在最前面(最低地址),最低有效字节在最后面(最高地址)。

大端存储模式 

 三、定义指针

指针即指针变量,用于存放其他数据单元(变量/数组/结构体/函数等)的首地址。若指针存放了某个数据单元的首地址,则这个指针指向了这个数据单元,若指针存放的值是0,则这个指针为空指针。

义一个指针变量:

数据类型

指向该数据类型的指针

(unsigned) char

1字节

(unsigned) char *

x字节

(unsigned) short

2字节

(unsigned) short *

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值