yunyuntop 2017-02-01 14:50 采纳率: 80%
浏览 2299
已采纳

为什么数组下标能访问指针指向的字符串

代码在这里,谢谢各位大神谢谢谢谢谢谢图片

  • 写回答

6条回答 默认 最新

  • threenewbee 2017-02-01 15:53
    关注

    C语言天然支持对指针用下标形式的写法(a[i]相当于a + i,你甚至可以很变态地写i[a],从语法上说不通,i又不是数组,但是如果你理解a[i]其实就是a+i,那么i[a]其实就是i+a,所以两个写法都可以)
    这里天然地读取常量区的字符串中的字符,当然没问题,printf调用的时候,肯定是把a[i]又拷贝了一份到堆栈上。
    不能写的是a[i] = xxx,因为a是常量。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?