自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 C语言之修改默认对齐数

运行程序发现其大小为12,当我们将默认对齐数从默认的8修改为2时,结构体的大小随之发生了变化。在实际开发中,一般不设置奇数的对齐数。在如下代码中,计算结构体的大小。

2023-04-22 21:55:24 118

原创 C语言之结构体

int age;}p1,p2,p3;

2023-04-22 17:55:55 54

原创 C语言指针之int数组与sizeof()

当a与一个整数进行加减时,a不再是数组的地址,它是数组的第一个元素的地址,孙然地址与数组的地址相同,但表示的意义将不再相同,以上代码,实际求的的a[0]的地址大小,在不同的平台,指针地址的大小是不一样的,32位平台的地址大小为4,64位平台的地址大小为8。上图中,我们打印处了数组的每个元素的地址,发现不管是32位平台还是64位平台,数组的最后一个元素的地址与&a+1的地址都相差4个地址,这也说明了&a+1指向的是当前数组的下一个地址,这里注意与a+1进行区分,a+1指向的是数组a[1]的地址。

2023-04-18 00:51:40 304

原创 指针数组与数组指针的区别

这也就为什么会存在arry + 1只增加4个地址,而arryp+1增加40个地址的原因了,前者的加1步进为4个地址,加1,表示加一个int类型的大小,而后者+1,表示加一个数组地址的大小,而代码中赋值的首地址为40个字节,故+1就加了40个字节。按照c语言的运算符顺序,该变量解释为,先定义一个数组,数组里面可以存放10个元素,每个元素的类型为int*,也就是说,这是一个数组,数组里面每个元素的类型都是整数类型的指针。话不多说,直接上代码运行,运行如下代码。首先,我们需要对定义的两个变量进行解析。

2023-04-15 22:34:35 66

原创 C 语言指针类型探讨

在之前的文章中,我们说过,在C语言中,指针地址的大小在不同的平台大小不同,在32位平台的大小位4个字节,在64位平台的大小为8个字节,与指针的类型无关,既然如此,那为什么还要定义不同的指针类型呢?int类型的指针+1后,指针的地址却增加了4个,从原来的00F5F8C4变为了00F5F8C8,这也说明了一个int类型的大小为四个字节。综合以上输出,我们可以得出结论,在C语言中,定义了不同指针,在对指针做相关的运算时,对地址的变化是不同的,这就是定义不同指针的意义。这也说明了char类型的大小为一个字节。

2023-04-15 17:55:02 78 1

原创 字符类型在内存中的存储及字符指针在内存中的表示

有如下代码,定义一个字符串,字符串的内容为"A",分分别打印字符串类型的大小及地址输出结果如下1FFFFFFCF以上代码变量在内存中的表示。

2023-04-15 16:52:59 135

原创 指针地址的大小

所谓32位系统,就是电脑CPU一次能处理32个电信号的能力,64位系统就是CPU一次性能够处理64位电信号的能力,在C语言中,指针地址的大小是和32位系统还是64位系统是息息相关的,在32位平台上,指针的大小为4个字节,在64位平台上,指针地址的大小位8个字节,这里强电一点,是指针地址的大小,不是指针类型的大小,先上图,再解释为什么不同平台指针地址的大小不一样。最近从新学习了一遍C语言,突然有想写博客的冲动,那就从今天开始行动吧,上来就直接来一个的,那就是大家又爱又恨的指针,废话不多说,开整。

2023-04-15 15:51:27 304 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除