我发现打印char数组时,Xcode和Eclipse之间有区别。
在xcode中:
c++ - 在Xcode和Eclipse中输出char数组-LMLPHP

输出为:
c++ - 在Xcode和Eclipse中输出char数组-LMLPHP

在Eclipse中:
c++ - 在Xcode和Eclipse中输出char数组-LMLPHP

输出:
c++ - 在Xcode和Eclipse中输出char数组-LMLPHP

有人可以告诉我为什么Xcode中后面跟着“ qe”吗?

最佳答案

如果要将char数组视为要打印的字符串,则需要使它以null终止。这意味着最后一个字符必须为\0

char d[] = {'q', 'e', '\0'}; // NOTE: null terminator '\0'
char* b = d;
std::cout << b << std::endl;


否则,您将结束打印数组末尾内存中的所有内容,因为空字符会告诉它何时停止打印。

08-05 20:57
查看更多