任何人都可以使用下面的C++代码找出没有任何内容打印到控制台上的原因;
string array[] = { "a", "b", "c", "d" };
int length = sizeof(array);
try
{
for (int i = 0; i < length; i++)
{
if (array[i] != "") cout << array[i];
}
}
catch (exception &e)
{
e.what();
}
Run Code Online (Sandbox Code Playgroud)
你使用错误的长度:
int length = sizeof(array)/sizeof(array[0])
Run Code Online (Sandbox Code Playgroud)
您在控制台上看不到任何内容的实际原因是因为输出是缓冲的,并且由于您没有写过换行符,因此它不会被刷新.与此同时,您的应用程序崩溃了.