目前,我有一个定义为以下内容的C字符串:
std::string str = "printf(\"Hello world\n\")";
最外层的双引号是用来定义这个字符串的。我们可以看到,字符串中的双引号已经被\
转义了。
当我使用fprintf()
将上述字符串写入文件时,我发现\n
被视为换行符,但实际上\\n
才是解决问题的方法。
在这个文件中有很多直接的\n
。我尝试在vim中使用%s/\n/\\n/g
,但连真正的“换行符”也被影响了。
我该如何在vim中只替换直接的\n
为\\n
,而不影响真正的换行符呢?
:%s/\\n/\\&/g
。 - Sundeep