我刚刚在想关于问题 'Hello, World!' in C without semicolons and without 'if', 'while', or 'for' statements 的内容。
以下代码能在C中运行,但不能在C++中:
int main(int argc, char *argv[printf("Hello, World!\n")]) {}
在C++中,我遇到了这个错误:
error: expected ‘,’ or ‘...’ before ‘argv’|
warning: second argument of ‘int main(int, char*)’ should be ‘char **’ [-Wmain]|
||=== Build finished: 1 errors, 1 warnings ===|
为什么在C++中它不起作用?
char **
(至少一次数组衰减),但解析错误意味着编译器正在误解。 - Lightness Races in Orbit