Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/164.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在不使用sprintf或to_字符串的情况下将值插入字符串 目前我只知道将值插入到C++字符串或C字符串中的两种方法。_C++_String Formatting - Fatal编程技术网

在不使用sprintf或to_字符串的情况下将值插入字符串 目前我只知道将值插入到C++字符串或C字符串中的两种方法。

在不使用sprintf或to_字符串的情况下将值插入字符串 目前我只知道将值插入到C++字符串或C字符串中的两种方法。,c++,string-formatting,C++,String Formatting,我知道的第一种方法是使用std::sprintf()和C字符串缓冲区(char数组) 第二种方法是使用类似于i:+to\u字符串(value)+“\n”的值 但是,第一种方法需要创建缓冲区,如果您只想将字符串传递给函数,则会产生更多代码。第二种方法生成长代码行,每次插入值时字符串都会中断,这使得代码更难读取 从Python中我知道format()函数,它的用法如下: “i的值:{}\n”。格式(i) 大括号将替换为格式中的值,还可以附加.format() 我非常喜欢Python在这方面的方法,因

我知道的第一种方法是使用
std::sprintf()
和C字符串缓冲区(char数组)

第二种方法是使用类似于i:+to\u字符串(value)+“\n”的值

但是,第一种方法需要创建缓冲区,如果您只想将字符串传递给函数,则会产生更多代码。第二种方法生成长代码行,每次插入值时字符串都会中断,这使得代码更难读取

从Python中我知道
format()
函数,它的用法如下:

“i的值:{}\n”。格式(i)

大括号将替换为格式中的值,还可以附加
.format()


我非常喜欢Python在这方面的方法,因为字符串保持可读性,并且不需要创建额外的缓冲区。在C++中有类似的方法吗?

< P>在C++中格式化数据的惯用方式是用输出流()。如果希望格式化输出以
std::string
结尾,请使用:

这与格式化输出数据的方法相匹配:

cout << "Value of i: " << i << "\n";

<代码> CUT> P>在C++中格式化数据的惯用方式是输出流()。如果希望格式化输出以
std::string
结尾,请使用:

这与格式化输出数据的方法相匹配:

cout << "Value of i: " << i << "\n";

cout???+1,但是用输出流格式化字符串与处理python字符串相差甚远。我同意Pradhan。。。尽管这似乎是一种比sprintf
更好的方法,但您只需用流+1“替换”缓冲区,但用输出流格式化字符串与处理python字符串相差甚远。我同意Pradhan。。。尽管这似乎是一种比sprintf更好的方法,但您只需用流“替换”缓冲区即可。
cout << "Value of i: " << i << "\n";