gpt4 book ai didi

c - 为什么将 wchar 字符串写入文件在 C 中不起作用

转载 作者:行者123 更新时间:2023-11-30 14:48:03 25 4
gpt4 key购买 nike

我希望我的程序从用户那里获取一个 wchar 字符串并将其打印到文件中,但即使它正确地将字符串打印到命令提示符,当涉及到文件时,它只打印 ascii 字符,任何其他字符字符打印不正确。

示例:它不是写“olá”,而是打印“ol”

#include <stdio.h>
#include <wchar.h>
#include <locale.h>

int main(){
FILE *pst = fopen("C:\\teste1.txt","a");
wchar_t word[100];
fgetws(word,20,stdin);
fputws(word,stdout);
fputws(word,pst);
fwprintf(pst,word);
return 0;
}

最佳答案

发布的代码表现应有。

Georgioss-MBP:~ gsamaras$ g++ -o m main.cpp 
Georgioss-MBP:~ gsamaras$ ./m
olá
olá
Georgioss-MBP:~ gsamaras$ cat test.txt
olá
olá

从终端执行此操作,因为问题可能是您正在从文本编辑器查看文件,而文本编辑器的编码未设置为正确显示宽字符。

关于c - 为什么将 wchar 字符串写入文件在 C 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50766404/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com