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

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

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

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

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条)

相关推荐 更多相似问题