这个问题。比较复杂。
创新互联专注于镇江企业网站建设,自适应网站建设,成都商城网站开发。镇江网站建设公司,为镇江等地区提供建站服务。全流程按需策划设计,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
简单的说一下吧。
第一个:汉字的编码是有好几种的。UTF-8,UNICODE之类的。所有的汉字编码都不止一个字节。
有的编码汉字是用2个字节表示的。有的更多。
有的编码方式中汉字的字节数甚至不固定。有的汉字字节2个,有的3个4个。
你能读取出来的主要原因是因为读取到固定的几个字节后,系统会翻译一下显示出汉字。
比如读取的是一种编码是2个字节的汉字。系统读取2个字节后会翻译,显示在控制台上。
大概就是这个意思。如果要深入了解的话,那就必须要你自己去学了。
getc()和fgetc()函数即可以接收键盘输入(f)getc(stdin),也可以读取文本文件(f)getc(file
*stream),成功,返回读取的字符,否则返回eof,原型都在头文件stdio.h中,两者没有区别。
putc()和fputc()是输出函数,(f)putc(stdin)写字符到显示器,也可以写到文本文件fputc(file
*stream)。成功,putc()返回写出的字符,而fputc()返回写出的字符数(奇怪不?),不成功都返回eof。
在C语言中,用函数getc(fgetc)从文件读取字符。getc、fgetc用法相同。getc的调用形式:ch=getc(fp);此处的fp是文件指针;函数功能是从文件指针指向的文件读入一个字符,并把它作为函数值返回给字符型变量ch。
#include
int
main()
{
char
c;
c
=
getc(stdin);
printf("%c",c);
return
0;
}
纯手打,望采纳