printf("\n");
return 0;
}
#endif
大家好
这些是我代码的最后几行,这就是在 C 中用换行符结束文件的方式吗?或者当他们说你应该始终以换行符结束文件时,他们是否还有其他意思?
当我尝试在 endif 下添加换行符时,它给了我一个错误,所以我只能把它放在那里,或者我不应该打印换行符?根据我的学校的规定,我应该用换行符提交,但我不确定这是否正确。
该片段以
f
结尾(来自 #endif
)。文件应以空行结尾:
printf("\n");
return 0;
}
#endif
问题(理论上)是任何文件都可以是
#include
,例如,如果您有一个以#endif
结尾的标头xx.h,并说一个以#if
开头的yy.h,代码:
#include“xx.h” #包括“yy.h”
预处理器会尝试解析:
#endif#if
全部在一条线上并且会失败。
在 C++ 中,编译器需要表现得就像有换行符一样,即使没有明确避免此问题。这也可能出现在后来的 C 标准中,或者我猜编译器可能会选择在任何情况下隐式添加它并发出警告。