所有栏目 | 云社区 美国云服务器[国内云主机商]
你的位置:首页 > 云社区 » 正文

数组怎么理解?

发布时间:2020-04-15 16:56:27

资讯分类:数组  理解  指针  数组  多字
数组怎么理解?

a+1不是数组+1,而是数组的第一个元素的指针+1,即&a[0]+1,它等于&a[1],即数组的第二个元素的地址(指针)。int *ptr2 = (int*)((int)a + 1);是把指针a强制为int型再+1,把+1后的值再强制成int *型指针,最后赋给int *型指针ptr2。所以int *ptr2 = (int*)((int)a + 1);与int *ptr2 = a + 1;等价。建议初学者不要纠结什么“大端”、“小端”模式,不是因为难,而是因为简单得不值得去考究;它是系统安排多字节数据在内存中的顺序问题,对用户来说一般是透明的,不必去探究;等略有长进,自然完全明白。

数组怎么理解?

数组相当于一连串数字,每个数都是有一个固定的位置,a【2】就表示数组中第二个字符(起始元素为a【1】),然后要进行运算就相当于取数组中的元素位置。就比如说有一排的人50个年龄不同(相当于把他们的年龄当做数组中的数据),然后你说把第一个和最后一个人的年龄相加,即a【1】+a【50】=数组中两个数据的和。懂了吗?再不懂我也没办法了

留言与评论(共有 0 条评论)
   
验证码:
Top