C++ cout新阵列乱码

Ben*_*Ben 2 c++

当我"兜售"一个空阵列时,我得到了胡言乱语.为什么?

int main() { char test[10]; cout << test; return 0; }
Run Code Online (Sandbox Code Playgroud)

...返回一些unicode blather.一个简单的答案我敢肯定.

GMa*_*ckG 8

因为您的数组未初始化.它的内容可以是任何内容,并且使用它们会得到未定义的行为.

您可以将它们全部初始化为零:

char test[10] = {};
Run Code Online (Sandbox Code Playgroud)

打印时,什么都不打印.