请问这个用C语言编写输出汉字的程序用到了什么知识?

来源:百度知道 编辑:UC知道 时间:2024/06/16 15:02:04
这个程序是输出汉字的,我以为是很普通的输出ASCII码,输出的结果让我想不通,请详细说明用到的知识点和原理,谢谢。
#include "stdio.h"
main()
{
char a=176,b=219;
printf("%c%c%c%c%c\n",b,a,a,a,b);
printf("%c%c%c%c%c\n",a,b,a,b,a);
printf("%c%c%c%c%c\n",a,a,b,a,a);
printf("%c%c%c%c%c\n",a,b,a,b,a);
printf("%c%c%c%c%c\n",b,a,a,a,b);

}

晕,这也算是输出汉字,我恐怕写这个程序的人也不知道能输出什么汉字,%c输出的是一个字符,但是 英文字母的ascii码 <122,但是有些ascii码是不能输出的,比如控制字符,当输出,
这些不能表示的ascii码的时候就会输出乱码了,你信不信还能输出“叮”的一声响呢,
你让a=7试试

就是乱码,下面是ASCII码表
http://www.weste.net/tools/ASCII.asp
176和219都是在127之后的了,可能windows下不支持显示吧,所以显示成了乱码,看a和b的顺序看起来好像是要输出一个X的图形,但是显示成了乱码