C语言读取中文(地名等词组解决办法)

C语言读取中文(地名等词组解决办法)

纯属个人笔记,简单记一下(如有不当地方欢迎指教,本人菜小白)
在ascll编码中为两个编码表示一个汉字,但是C语言貌似没有一次输出两个字符的函数。
所以我的解决方法是利用二维数组存取。(有局限性)

比如碰到城市名这种简单的词组是,一个一维数组貌似不好解决这个问题。
因此利用二维数组的一维性,二维数组可看作矩阵,每一行是一个一维数组,存储一个地名。

#include
int main()
{
    int i;
	FILE *fp;
    fp=fopen("city.txt","r");
    if (fp==NULL) 
		printf("读取文件发生错误\n");
    char s[32][20];
    
	for(i=0;i<32;i++){
		if(fscanf(fp,"%s",&s[i])=='*')
			break;
	}
		
    
	for(i=0;i<32;i++)
		printf("%s ",s[i]);
}

city.txt文件内容
city.txt
输出结果图
输出结果图

你可能感兴趣的:(笔记)