no newline at end of file

forckgcs 2010-03-02 04:10:51
在linux下编译 有很多的no newline at end of file这样的warning 文件很多 所以想disable掉 有知道这个warning的号的吗???
...全文
269 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
forckgcs 2010-03-02
  • 打赏
  • 举报
回复
熟悉批处理的朋友能不能帮忙写一个呢?
把文件夹及子文件夹所有的.cpp和.h文件打开,如果文件最后没有换行符则加上,有则跳过
forckgcs 2010-03-02
  • 打赏
  • 举报
回复
引用 8 楼 mlee79 的回复:
#pragma 是编译器相关的, gcc 啥时候支持这垃圾东西了....


有失水准的一句话
forster 2010-03-02
  • 打赏
  • 举报
回复
振作啊。。。。。。。。。。。。。
cattycat 2010-03-02
  • 打赏
  • 举报
回复
写个脚本批处理一下吧。
mLee79 2010-03-02
  • 打赏
  • 举报
回复
引用 11 楼 forckgcs 的回复:
windows下编辑的文件 拿到linux下编译就会有这个警告 windows和linux的换行不一样 \n\r  \n
我们的工作环境是windows 即使这次一次性改好 以后别人再修改保存还是会有这个问题 每次让人家保存文件后运行一下这个脚本?不太现实吧

写 gcc 的人不是傻子, 谢谢...
\r\n|\r|\n 都可...
taodm 2010-03-02
  • 打赏
  • 举报
回复
严重支持后面半句
引用 1 楼 mlee79 的回复:
你为虾米不能在米个文件后面加个空行, 看来gcc应该给个error...
forckgcs 2010-03-02
  • 打赏
  • 举报
回复
windows下编辑的文件 拿到linux下编译就会有这个警告 windows和linux的换行不一样 \n\r \n
我们的工作环境是windows 即使这次一次性改好 以后别人再修改保存还是会有这个问题 每次让人家保存文件后运行一下这个脚本?不太现实吧
InfidelX 2010-03-02
  • 打赏
  • 举报
回复
引用 9 楼 taodm 的回复:
写一个C程序来加这一行也就20行代码吧。
写一个dos批处理来处理,恐怕在5行以内吧。

愿闻其详细~
taodm 2010-03-02
  • 打赏
  • 举报
回复
写一个C程序来加这一行也就20行代码吧。
写一个dos批处理来处理,恐怕在5行以内吧。
mLee79 2010-03-02
  • 打赏
  • 举报
回复
#pragma 是编译器相关的, gcc 啥时候支持这垃圾东西了....
forckgcs 2010-03-02
  • 打赏
  • 举报
回复
没人知道怎么找到这个号吗?#pragma warning(disable:XXXX)
forckgcs 2010-03-02
  • 打赏
  • 举报
回复
谢谢 这位朋友 这个我看过
现在是组长让我这么改
我也没时间弄这个 直接disable就得了
forckgcs 2010-03-02
  • 打赏
  • 举报
回复
能不能直接告诉我号 或者哪能找到这个号 baidu google半天也没找到 我现在用最方便的方法解决就行
CCCCCCCCCCCCCCC 2010-03-02
  • 打赏
  • 举报
回复
C99里的规定

Each instance of a backslash character (\) immediately followed by a new-line character is deleted, splicing physical source lines to form logical source lines.
Only the last backslash on any physical source line shall be eligible for being part of such a splice. A source file that is not empty shall end in a new-line
character, which shall not be immediately preceded by a backslash character before any such splicing takes place.

A backslash immediately before a newline has long been used to continue string literals, as well as preprocessing command lines. In the interest of easing machine generation of C, and of transporting code to machines with restrictive physical line lengths, the C89 Committee generalized this mechanism to permit any token to be continued by interposing a backslash/newline sequence.


一是为了每一行都要以换行结束。二是,因为行尾的\表示连接下一行,如果一个文件最后一行行尾有\,那么,紧跟它也被包含进来的下一个源文件的第一行就会被连接!而如果一个文件以一个空行结束就会避免这种情况的发生。

hai040 2010-03-02
  • 打赏
  • 举报
回复
引用 2 楼 forckgcs 的回复:
8000多个文件...

写个小程序加一行也不难
forckgcs 2010-03-02
  • 打赏
  • 举报
回复
8000多个文件...
mLee79 2010-03-02
  • 打赏
  • 举报
回复
你为虾米不能在米个文件后面加个空行, 看来gcc应该给个error...

64,683

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧