gpt4 book ai didi

c++ - 如何在 fstream 中使用引号?

转载 作者:太空宇宙 更新时间:2023-11-04 16:21:12 25 4
gpt4 key购买 nike

我想将一行输出到 .plt 文件中,其中包含带有双引号的 "one-D Hydro",到目前为止我遇到了这个问题。

#include <cstdlib>
#include <fstream>

using namespace std;

int main()
{
fstream gnuplot_file;

gnuplot_file.open ("sod.plt");
gnuplot_file<<"set title"<< ""one-D Hydro""<<std::endl;
gnuplot_file.close();
system("gnuplot.exe sod.plt");


return 0;
}

第 11 行不允许它编译,因为我似乎无法关闭该语句。顺便说一下,这个错误同样没用。

gnuplot_call.cpp|11|错误:应为“;”在“一”之前|

最佳答案

在 C++03(甚至 C)中,使用反斜杠转义字符串文字中的双引号:

    gnuplot_file << "set title" << "\"one-D Hydro\"" << std::endl;

请注意 gnuplot 可能还要求您转义某些字符,例如如果您希望标题包含引号!

C++11你可以使用 raw string literals ,例如

   gnuplot_file<< R"*(set title "one-D Hydro")*" << std::endl;

顺便说一句,您可能会对 popen(3) 感兴趣和 pclose,如果您的操作系统和 C++ 库提供了它们。您只需popen gnuplot 进程并向其发送命令,最后pclose-ing 它。

关于c++ - 如何在 fstream 中使用引号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16676763/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com