64ビットウィンドウにファイルするwchar_t配列を印刷する方法
質問
Windows APIから入力されたいくつかのWCHAR_T配列をFOPENで開いたファイルに出力したい:
wchar_t content[256];
SomeWindowsAPI(content, 256);
FILE *file;
file=fopen( "C:\\log","a+");
fputs(content , file); //????
ただし、fputsはconst char*配列を期待しています。幅広い配列文字を期待するファイルパイプに書き込む他のC APIはありますか?
解決
ヌル終端シーケンスを印刷するために、の広い類似体 fputs
は fputws
:
int fputws(const wchar_t *restrict ws, FILE *restrict stream);
別の方法として、あなたはあなたの広い文字列に生データを書くことができます fwrite
:
wchar_t str[] = L"Hello World";
FILE * fp = /* ... */;
fwrite(str, sizeof(wchar_t), wcslen(str), fp);
所属していません StackOverflow