我有一个从数组中读取数据的函数,但是,当我想打印数据而不是名字时,我会得到一些垃圾:4273 �нз знзнз
。哪里弄错了?
一个函数,student_list[i] = "4273 Константинопольский А. А. 4333 знзнз"
:
int debt() {
char name[100];
char test[5];
int group;
int exam;
for (int i = 0; i < 4; i++) {
sscanf(student_list[i], "%d %[^0-9] %d %s", &group, name, &exam, test);
printf("%d %s %s\n", group, name, test);
}
return 0;
}
答案 0 :(得分:1)
因为内存中char类型的大小不足以保存unicode字符,所以你应该依赖于你的编译器使用其他类型的数据类型,比如wchar,或者我可以提供给你,它更好地使用cuchar。 h头文件并解决您的问题