带字符串参数的 fprintf
问题描述:
为了创建格式化文件,我想使用fprintf
.它必须获得 char*
参数,但我有几个字符串变量.如何使用 fprintf
?
In order to create a formatted file, I want to utilize fprintf
. It must get char*
parameters, but I have several string variables. How can I use fprintf
?
答
fprintf
与字符串的基本用法如下所示:
The basic usage of fprintf
with strings looks like this:
char *str1, *str2, *str3;
FILE *f;
// ...
f = fopen("abc.txt", "w");
fprintf(f, "%s, %s\n", str1, str2);
fprintf(f, "more: %s\n", str3);
fclose(f);
您可以使用多个 %s
格式说明符添加多个字符串,并且您可以使用重复调用 fprintf
来增量写入文件.
You can add several strings by using several %s
format specifiers and you can use repeated calls to fprintf
to write the file incrementally.
如果您有 C++ std::string
对象,您可以使用它们的 c_str()
方法来获得适合使用的 const char*
使用 fprintf
:
If you have C++ std::string
objects you can use their c_str()
method to get a const char*
suitable to use with fprintf
:
std::string str("abc");
fprintf(f, "%s\n", str.c_str());