我看C语言教材,上面说✀A✀是一个字符,A也是一个字符,那字符的定义或者含义是什么?还有关于转义字符问题

2024-12-27 08:46:00
推荐回答(1个)
回答1:

我从头跟你讲一讲,首先你这样理解,计算机中没有字符这个东西。
所谓的字符就是指一个0-255的数字,和int没什么区别,就是最大只能是255。
然后当你调用printf时,printf函数会把这个数值翻译成A,B,C,0,1等等来输出。其实没什么神秘就是使用一张ASCII对照表,每个数字对应一个字符这样翻译。请参考http://www.asciitable.com/
由于英语字母加上数字等常见字符的总数不到255个,所以有些数字对应的符号比较诡异,其中一类就是无法显示的,但是这些字符可能有些其它含义(例如表示文件结尾)。
你在写程序的时候会写
char c = 'A';
这时候编译器(VC++)会把'A'通过ASCII对照表转换成对应的数字放在c变量中。
转移字符就是指有些字符不能直接写,例如',因为他会和起始符号混淆,要这样写:
char c = '\'';
不能这样写
char c = ''';
还有就是"和\本身,应该这样写
char c = '\"';
char c = '\\';
还有一类要用转移字符的就是无法打印的字符,这个用的比较少了。