0

我想将一些从某些 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 可以写入需要宽数组字符的文件管道?

4

1 回答 1

1

为了打印一个空终止的序列,广泛的类似物fputsfputws

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);
于 2012-02-19T03:57:42.467 回答