真的是阿咩啊 2022-01-15 14:44 采纳率: 100%
浏览 280
已结题

vscode终端内输入中文不能被程度读取

编译c/c++之后VSCODE的终端里能够输入中文,但回车之后程序并没有读取到我的中文输入。
#include <stdio.h>
#include <stdlib.h>

int main()
{   
    char a[10];
    scanf("%s", a);    
    printf("%s", a);
    printf("%s", a);
    printf("%s", a);
}
预想的是在终端内输入两个中文字符,被scanf读取入字符串数组a后输出到屏幕上。
运行后输入两个中文字符,但没有输出。检查过字符串数组,里面并没有写入任何字符。全程没有任何乱码情况,代码运行没有报错。
起初以为是cmd和vscode的编码不一致,但检查过后发现是一致的,cmd和vscode里都默认为chcp 65001。
检查了包括code runner在内的插件,配置都是默认的并没有变化,使用了大半年都没有发生过这种情况。
后面还尝试了使用其它获取输入的函数,更改字符串数组大小,重新配置其它版本的编译器,卸载重装vscode,重启电脑。
但都没有解决。
诡异的是在powershell中运行却能够正常获取我输入的中文字符。
  • 写回答

1条回答 默认 最新

报告相同问题?

问题事件

  • 系统已结题 1月23日
  • 已采纳回答 1月15日
  • 修改了问题 1月15日
  • 创建了问题 1月15日