我有多个C源文件。在这些文件中,注释以C ++样式使用(即//)。这些我想改变c风格(/ * * /)。不是手动更改它,而是有任何脚本来执行此操作。如果有的话,请告诉我,我将非常感谢你。
答案 0 :(得分:0)
快速而肮脏的解决方案是sed 's=//\(.*\)$=/*\1 */=
。
此解决方案不健壮,因为//
可能出现在字符串甚至其他注释中。
强大的解决方案需要(部分)C词法分析器。但是,有人可能会说这个问题没有真正的解决方案,因为这两种类型的注释是不兼容的。
从http://lua-users.org/lists/lua-l/2013-04/msg00310.html开始考虑这个例子。
int x = 5 //* strange construction */ + 5
+ 5;
x
在旧式ANSI C中为6,如果编译器接受'//'注释,则为10。