C++2:忽略的注意
每天学习亿点点,每天记录亿点点
Content:
- 字符串常量 “X” 与字符常量 ‘X’ 是不同的
(1)‘X’属于基本类型,“X属于派生类型”
(2)‘X’是一个字符,而“X”实际上是由两个字符(‘X’ 和 ‘\0’) - 常用转换说明符
(3)从 scanf 角度看输入
scanf函数开始每次读取一个输入字符,她会跳过空白字符(空格、制表符、换行符)直到遇到一个非空白字符。
Eg: scan(“%d , %d”, &n, &m) 表示需要键入一个数字,然后键入一个逗号,接着再键入一个数字。
(4)getchar() 和 putchar()
getchar()函数没有参数,它返回来自输入设备的下一个字符。putchar()函数打印他的参数。
★★★getchar()读取每个字符,包括空格、制表符和换行符;
★★★scanf()在读取数字时会跳过空格、制表符和换行符。
ch = getchar();
putchar(ch);
/*等效于*/
scanf("%c", &a);
printf("%c", a);
(5)“=” 与 “==” 的区别
a = 1,赋值语句
a == 1, 判断相等语句
(6)while的读循环
/*方法一*/
a = scanf("%d", &num);
while(a == 1){
/*其他操作*/
a = scanf ("%d", &num);
}
/*方法二*/
while(scanf("%d", &num) == 1){
/*其他操作*/
}
/*方法三*/
while((ch = getchar())!='\n'){
/*其他操作*/
}
(7)for 的灵活性
for语句中有三个表达式,第一个表达式来初始化计数器,第二个表达式来表达对计数器的限制,第三个表达式来把计数器的值加1。(此外对于各个表达式均有其变体)
(8)逗号运算符
把两个表达式链接成一个表达式,并保证最左边的表达式最先计算。他通常被用在for循环的控制表达式中以包含多个信息。整个表达式的值是右边表达式的值。
Eg:x = (y = 3,(z = ++y + 2)+5);
首先将y赋值为3,把y递增为4,然后把4加上2,把结果6赋值给z,最后把x赋值为结果值11.
(9) ctype.h 下常见的判断函数
函数名 | 为如下参数时,返回值为真 |
---|---|
isalpha() | 字母 |
isdigit() | 数字 |
(10)条件表达式
exp1 ? exp2 :exp3
如果exp1为真,整个表达式的值为exp2,否则为exp3的值。
(11)EOF(End Of File, 文件尾)
通常在stdio.h文件中定义EOF = -1。
一般情况下,getchar()返回一个范围在0-127之间的值,因为这些值是与便准字符集相对应的值,但是如果系统识别一个拓展的字符集,则可能返回从0 - 255的值。在每种情况下,值 -1 都不对应任何字符,所以用于表示文件结尾。
while((ch = getchar())! = EOF)
本文含有隐藏内容,请 开通VIP 后查看