web-dev-qa-db-ja.com

文字列引数を持つfprintf

フォーマットされたファイルを作成するために、fprintfを利用したいと思います。 char*パラメータを取得する必要がありますが、いくつかの文字列変数があります。 fprintfを使用するにはどうすればよいですか?

8
aryan

文字列での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());
_
22
sth

複数の文字列を含むfprintfは非常に単純です。それが目的の場合、たとえば、.

const char* charString1 = "This";
const char* charString2 = "is a";
const char* charString3 = "test";

fprintf(fileHandle, "%s, %s, %s", charString1, charString2, charString3);
3
Chaos

fprintfはprintfと同様に機能します。フォーマット指定子では、必要な数の%sを指定し、対応する数の文字列引数を指定できます。より詳細な回答が必要な場合は、コードを投稿してください。

1
Jay