带字符串参数的fprintf
为了创建一个格式化的文件,我想利用fprintf
。 它必须得到char*
参数,但我有几个字符串变量。 我该如何使用fprintf
?
带有字符串的fprintf
的基本用法如下所示:
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
以递增方式写入文件。
如果你有C ++ std::string
对象,你可以使用它们的c_str()
方法获得一个适合与fprintf
一起使用的const char*
:
std::string str("abc"); fprintf(f, "%s\n", str.c_str());
具有多个字符串的fprintf非常简单,如果这就是你所追求的,例如
const char* charString1 = "This"; const char* charString2 = "is a"; const char* charString3 = "test"; fprintf(fileHandle, "%s, %s, %s", charString1, charString2, charString3);
fprintf类似于printf,在格式说明符中,您可以根据需要提及%s并给出相应数量的字符串参数。 如果您想要更详细的答案,请发布您的代码。