char a[]="helloworld";
我想知道“l”的地址?(a+2)
或&a[2]
给了lloworld。加上其他的和号会显示错误。
那么如何得到“l”的地址呢?
如果不可能,请解释一下?
最佳答案
两者都是正确的,但如果要输出,则必须:
对于C:使用适当的格式字符串(对于C):printf("address: %p\n", &a[2]);
C++:避免通过CUT将字符串解释器转换为void*
:cout << "address: " << static_cast<void*>(&a[2]) << endl;