C++primerPLUS 第六章
逻辑表达式 先修改左侧的值在对右侧的值判断 如i=10 i++<6 || i==j 判断i==j 时i=11
char ch
cin>>ch 只读一个字符
逻辑优先级低于关系 x > 5 && x<10不用括号 ! 则高于逻辑和关系 所以要加括号
&& and ; ! not; || or; C++不用头文件 C要ISO646.H
cin >> a >> b;
expression1 ? expression2 : expression3 1true 则 2 1false 则3
goto paris;
.......
paris : cout << "You've just arrived at Paris"
最好也别用goto语句
switch 也可以用枚举enum 把字符提升为int
switch (integer-expression)
{
case label 1 : statements
case label 2: statements
case label 3 : statements
}
cin作为测试条件时候 读取成功为true 失败为false
I/O
头文件fstream iostream using namespace std
声明一个ofstream对象 读取 ifstream 可以 getline get eof(EOF返回TRUE) fail()(不匹配和EOF返回TRUE) bad()(文件受损硬件故障)都有括号
ofstream outFile;
ofstream fout;
与文件关联
outFile.open("fish.txt") ; //可以用C风格的字符串作为参数 没有则新建 有则丢弃全文重写 fin.is_open()打开成功返回1,失败0 老版本用good 如 inFile.good()
char filename[50]; 调用 exit(EXIT_FAILURE)
cin >> filename;
fout.open(filename); 也可以用字符串数组
写入(类似cout )
读取
double wt = 125.8; double wt;
outFile << wt; inFile >> wt; 读一个数字
char line[81]="dfhfjghlkfgjlkhjfglkhjlkfgh" char line[80];
fout << line << endl; fin.getline(line,81);
关闭
outFile.close()
其他 outFile.precision(4); //4的精度来file output cout.precision(2)也可
头文件:#include<ctype.h> 返回的是INT 但是在测试条件里会转换成BOOL
(1)isalnum(c)
检查参数 c 是否为英文字母或阿拉伯数字, 在标准c 中相当于使用"isalpha(c) || isdigit(c)"做测试.
(2)isalpha(c)
检查参数 c 是否为英文字母, 在标准c 中相当于使用"isupper(c)||islower(c)"做测试.
(3)issupper(c)
检查参数 c 是否为大写英文字母.返回值若参数c 为大写英文字母, 则返回TRUE, 否则返回NULL(0).
(4)islower(c)
检查参数 c 是否为小写英文字母.返回值若参数c 为小写英文字母, 则返回TRUE, 否则返回NULL(0).
(5)isdigit(c)
检查参数 c 是否为阿拉伯数字0 到9.返回值若参数c 为阿拉伯数字, 则返回TRUE, 否则返回NULL(0).
(6)isascii(c)
检查参数 c 是否为ASCII 码字符, 也就是判断c 的范围是否在0 到127 之间.
(7)iscntrl(c)
检查参数 c 是否为ASCII 控制码, 也就是判断c 的范围是否在0 到30 之间.
(8)isspace(c)
检查参数 c 是否为空格字符, 也就是判断是否为空格('')、定位字符('\t')、CR('\r')、换行('\n')、
垂直定位字符('\v')或翻页('\f')的情况.
返回值若参数c 为空格字符, 则返回TRUE, 否则返回NULL(0).
(9)ispunct(c)
检查参数 c 是否为标点符号或特殊符号. 返回TRUE 也就是代表参数c 为非空格、非数字和非英文字母.
返回值若参数c 为标点符号或特殊符号, 则返回TRUE, 否则返回NULL(0).
附加说明此为宏定义, 非真正函数.
(10)isgraph(c)
检查参数 c 是否为可打印字符, 若c 所对应的ASCII 码可打印, 且非空格字符则返回TRUE.
返回值若参数c 为可打印字符, 则返回TRUE, 否则返回NULL(0).
附加说明此为宏定义, 非真正函数.
tolower toupper 大写返回小写 小写返回大写