请问这是什么语法2["abc"]?

cout<<2["abc"]<<endl;
输出c。
不过这是什么语法啊,c++/c的,以前没遇到过,百度无果,有没有老司机带带啊。

阅读 3.6k
4 个回答

a[b] 实际上是 *(a + b)
所以 上面这段代码相当于

#include <iostream>

using namespace std;

int main(void) {
    cout << *("abc"+2) << endl;
    return 0;
}

搬运一个stackoverflow: http://stackoverflow.com/ques...

在《C和指针》第144页讲了这个例子,我就直接给你截图了,作者也不推荐这么写。
图片描述

请问题主是在什么情景下遇到的这个问题呢?有点好奇这是什么东东。

这个难道是映射表?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题