C语言 索引
本帖最后由 BIO-张磊 于 2020-6-6 10:06 编辑为什么str== *(str+20) == *(20+str) == str
前面我都能理解,*(20+str) == str是什么意思
还有课后作业说str 和 3 是相同的,这又什么意思
那么除了字符数组可以这么表示,整型数组也可以吗? 这个……怎么就不能理解了呢? C语言里面arr与m的写法是等价的,都是表示数组a中的第m+1号元素,不过多数时间见到的是第一个;
*(a+m)与a也是同理;数组名a是首元素地址/数组起始地址;加上偏移量*步长就可访问这个数组的每个元素了
至于*(str+20)与*(20+str)写法不同而已
注意:str这种写法是错误的,编译不通过,只有str与20;*(str+20)/*(20+str)可行。
页:
[1]