作业帮 > 综合 > 作业

若已定义 int a[ ]={1,2,3,4},*p=a,则下面表达式中值不等于2的是A.*(a+1)B.*(p+1)C

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/07/10 06:01:15
若已定义 int a[ ]={1,2,3,4},*p=a,则下面表达式中值不等于2的是A.*(a+1)B.*(p+1)C.*(++a)D.*(++p)
若已定义 int a[ ]={1,2,3,4},*p=a,则下面表达式中值不等于2的是A.*(a+1)B.*(p+1)C
选C 因为 a数组是常量 不能用 ++a 其他的都是可以的
再问: 能解释一下其他几个选项得2是怎么来的吗?
再答: 选项A 就是a+1所指向的数组元素 即 a[1] 选项B 就是p+1所指向的数组元素 即a[1] 说白了 A和B选项 是 等价的 选项D 则是 先让 p自增1 然后 再取 * 那么就是 指向了 2 其实 就等价于 a[++i](i=0)