第二章笔记
在某些编程语言中, 字符常量能够参与整数运算, 其结果为一个确定的数值. 例如, 在以下代码片段中: 定义变量 a 为 整型. 赋值给 a 的结果是 两个 单 引 号 后 的 字 符 ( 如 'a' 和 'b' ) 相 加. 运 行 该 代 码 后 会 得 到 195 作 为 输出.
在C语言中允许将char类型与unsigned short类型进行混用,在这种情况下既能将这些类型存储到相应变量中又能对它们执行算术运算。例如:
char a;
a = 'A' + '\n';
printf("%d", a);
上述语句会将'A'和'\n'两个ASCII码相加得到一个数值结果75并将其存入变量a中打印出来。
若采用%c格式 specifier即可显示相应的控制字符。
需要注意的是当运算超出范围时会导致错误出现因此在实际应用中应当避免这种可能的情况发生
3.在字符串中,在表示字符时必须确保占位以避免混淆。\加ASCII码经过处理后被视为一种特殊的编码形式,并类似于换行符。
- 输出实际上非常灵活,在允许将二进制数据以指定的方式进行输出时,并不受变量原本类型的影响。然而,在这种情况下可能会导致错误的结果。
5.%是一个类似于\的特殊字符,想要在字符串里输出%本身这个字符,就得用%%。
6.当字符输出宽度小于实际宽度时,会输出实际宽度。
在整型运算过程中出现浮点数时,在系统中会直接舍弃小数部分;同样适用于整个表达式。当在某个地方乘以1.0或另一个浮点数值时,则会导致后续的计算使用双精度类型,并最终得到一个整数值的结果;例如,在计算3/4后跟上操作与先将3/4转为双精度再进行操作的结果完全不同
在输入时,请注意以下情况:
若使用如下格式进行操作:
scanf("%d %d; %d",&a,&b,&c);
则需确保在第2、第3个数字之间插入一个分号以实现正确读取。
同样地,在输入函数引号中的任意普通字符都需要加以添加。
9.整数在输入时截取长度后,剩下的数字会成为“新”的数字。
当输入使用星号标记并指定截取长度时,则可跳过相应位置的数值。剩余的数值即为"新数据"。即使超出原始数据范围,在后续处理中也无需再考虑后续未被包含的数值。
11.也可以用单个字符对int赋值,比如:
int a;
a=‘L’;
putchar函数的参数中可以包含ASCII码数值;当变量为char类型时也可以使用与其对应的整数系列数据类型的值;其效果与直接使用ASCII数值相同;或者直接在字符串前加单引号并输入单一字符;另外一种方法是在字符串前后加上反斜杠结合对应的ASCII数值
- getchar()函数,在每次执行后按回车键才会开始从左到右、从上到下逐个读取字符的第一个字符。例如:
putchar(getch());
putch
art(getch());
...
重复执行该操作;
然后在同一行依次输入a b c d e f g,则最终屏幕显示abcd七个字符中的前四个字符即a b c d
