一条语句中没有 error/warning 用于多个 cout
No error/warning for multiple cout in one statement
我不小心在一个语句中有多个 cout。
cout<<5<<cout<<6;
它显示了一些垃圾,我意识到我的错误。但为什么在这种情况下没有错误或警告?我将代码块 IDE 与 mingw 一起用于 windows.
编辑:完整代码为
#include <iostream>
using namespace std;
int main(void)
{
cout<<5<<cout<<6;
return(0);
}
构建消息是
mingw32-g++.exe -Os -pedantic -Wextra -Wall -c "C:\Study
Materials\C++\CPP Programs MP Compiled\inputOutput\q1.cpp" -o
"C:\Study Materials\C++\CPP Programs MP Compiled\inputOutput\q1.o"
mingw32-g++.exe -o "C:\Study Materials\C++\CPP Programs MP
Compiled\inputOutput\q1.exe" "C:\Study Materials\C++\CPP Programs MP
Compiled\inputOutput\q1.o" -std=gnu99 Process terminated with
status 0 (0 minute(s), 2 second(s)) 0 error(s), 0 warning(s) (0
minute(s), 2 second(s))
也许你没有看到任何错误
编译器为什么要警告您一些完全合法的事情?您正在指示程序输出 cout
的内容,这是合法的,并且会起作用。
我不确定 operator <<
是如何为 cout
定义的,但打印它的地址是我的期望,所以像 0x489944
(或更长)这样的东西似乎是正确的。
周围有 5 和 6,您的输出似乎是正确的:5
+0x489944
+6
= 50x4899446
cout
在 C 中是完全合法的。这意味着编译器不会告诉你任何错误,因为没有错误!
这意味着没有错误显示。
我不小心在一个语句中有多个 cout。
cout<<5<<cout<<6;
它显示了一些垃圾,我意识到我的错误。但为什么在这种情况下没有错误或警告?我将代码块 IDE 与 mingw 一起用于 windows.
编辑:完整代码为
#include <iostream>
using namespace std;
int main(void)
{
cout<<5<<cout<<6;
return(0);
}
构建消息是
mingw32-g++.exe -Os -pedantic -Wextra -Wall -c "C:\Study Materials\C++\CPP Programs MP Compiled\inputOutput\q1.cpp" -o "C:\Study Materials\C++\CPP Programs MP Compiled\inputOutput\q1.o" mingw32-g++.exe -o "C:\Study Materials\C++\CPP Programs MP Compiled\inputOutput\q1.exe" "C:\Study Materials\C++\CPP Programs MP Compiled\inputOutput\q1.o" -std=gnu99 Process terminated with status 0 (0 minute(s), 2 second(s)) 0 error(s), 0 warning(s) (0 minute(s), 2 second(s))
也许你没有看到任何错误
编译器为什么要警告您一些完全合法的事情?您正在指示程序输出 cout
的内容,这是合法的,并且会起作用。
我不确定 operator <<
是如何为 cout
定义的,但打印它的地址是我的期望,所以像 0x489944
(或更长)这样的东西似乎是正确的。
周围有 5 和 6,您的输出似乎是正确的:5
+0x489944
+6
= 50x4899446
cout
在 C 中是完全合法的。这意味着编译器不会告诉你任何错误,因为没有错误!
这意味着没有错误显示。