开发者社区 问答 正文

5["abcdef"] 这样的 ``表达式"。 这为什么是合法的 C 表达式呢 ?

5["abcdef"] 这样的 ``表达式"。 这为什么是合法的 C 表达式呢 ?

展开
收起
游客56pszsvgthciu 2022-03-29 02:21:42 605 分享 版权
1 条回答
写回答
取消 提交回答
  • 是的, 弗吉尼亚7.1, 数组和下标在 C 语言中可以互换。这个奇怪的事实来自数组 下标的指针定义, 即对于任何两个表达式 a 和 e, 只要其中一个是 指针表达式而另一个为整数, 则 a[e] 和 *((a)+(e)) 完全一样。这种交换性 在许多 C 语言的书中被看作值得骄傲的东西, 但是它除了在混乱 C 语言竞赛 之外, 其实鲜有用武之地。

    2022-03-29 02:22:06
    赞同 展开评论
问答地址: