数组名的两个易错点(初学者必进)

简介: 数组名的两个易错点

我们都知道,若有一个数组arr[];


那么数组名就是数组首元素的地址,但是有两种情况例外。


1. &arr,取的是数组的地址。


即虽然与arr相同,但是步长不同arr+1到下一个元素,&arr +1到数组结尾处


2. sizeof(arr),指的是整个元素的大小


 代码一复杂时容易忽略。


下面分享下我发觉自己漏掉2号易错点的情况。


是在做通讯录的过程中,脑子浆糊的。


这里要用memset开辟一块空间,是静态的版本。有两种写法。


重点:这里的本质都是在data的位置开辟覆盖完全的空间,由max控制。


但是出现了“ps->data”时,ps->的出现导致了误判。

image.png

image.png

相关文章
|
7月前
|
C语言
【进阶C语言】数组笔试题解析
【进阶C语言】数组笔试题解析
67 0
|
7月前
|
存储 C语言
遍历二维数组C语言,小白必看的绝绝子技巧!
遍历二维数组C语言,小白必看的绝绝子技巧!
|
存储 C语言
C语言进阶教程(再论指针和数组 (1))
C语言进阶教程(再论指针和数组 (1))
91 2
|
6月前
|
C语言
C语言刷题(数组)
C语言刷题(数组)
|
6月前
|
存储 C语言 索引
C语言数组:从入门到进阶
C语言数组:从入门到进阶
57 0
|
7月前
|
存储 C语言
C语言从入门到实战——数组和指针的强化练习题
C语言中指针和数组有着密切的关系,因为数组名在C语言中可以看作是一个指针常量。 指针是一个变量,存储的是另一个变量的地址。可以通过指针来访问另一个变量的值。指针变量可以存储任何类型的地址,包括数组的地址。 数组是一组相同类型的数据元素的集合。在C语言中,可以用数组名来表示整个数组,在这个意义上,数组名看起来像一个指针变量。实际上,数组名在C语言中可以看作是一个指向数组首元素的指针常量。
67 0
|
7月前
|
C语言
错误的集合(初阶C语言刷题)
错误的集合(初阶C语言刷题)
|
7月前
|
C语言
C语言进阶教程(再论指针和数组3)
C语言进阶教程(再论指针和数组3)
45 1
|
C语言
【C语言进阶篇】 你真的学会数组了嘛?数组笔试题万字解析(上)
【C语言进阶篇】 你真的学会数组了嘛?数组笔试题万字解析(上)
166 0
【C语言进阶篇】 你真的学会数组了嘛?数组笔试题万字解析(上)
|
存储 编译器 C语言
初级C语言之【数组】(二)
初级C语言之【数组】(二)
60 0