c++ - 如何在 C++ 中打印\"

标签 c++ printing ofstream quotations

我需要打印一个字符串来准确说明:

std::string("-I\"/path/to/dir\" ");

基本上,我需要这样做,因为我正在使用 C++ 代码生成 C++ 代码。

我想通过 ofstream 写上面的字符串,所以像

 ofstream fout;
 fout << the_string << endl;

问题是我不能在字符串中执行 \\"

最佳答案

只需转义斜杠以及引号! IE。 \" --> \\\"

fout << "std::string(\"-I\\\"/path/to/dir\\\" \");" << std::endl;

在 C++0x/C++11 中

fout << R"(std::string("-I\"/path/to/dir\" ");)" << std::endl;

它使用了一个 raw string literal 1

http://ideone.com/TgtZK 查看两个版本的实时测试

1 不出所料,ideone.com 和 stackoverflow 的语法高亮器还没有准备好:)

关于c++ - 如何在 C++ 中打印\",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8029783/

相关文章:

c++ - 隐藏c plus plus程序中的bash代码

c# - 如何在 VS2010 中创建 STA(单线程单元)控件

windows - 从命令行以编程方式打印多份副本

c++ - 在 C++ 中打开并写入现有的 fstream 而无需覆盖/清除

c++ - 使用 ofstream 创建一个位图文件有一个奇怪的输出

c++ - 使用逻辑或 ||合并两个整数?

c++ - 是否可以在一个解决方案中包含具有不同平台工具集的项目? (MSBuild)

c++ - 允许在 Debug模式 Visual Studio 中内联特定 header

go - 如何用golang打印?

php - 中文条码打印机和 Linux