声明:本文整理自《C++ Primer Plus》
1.错误防范。
将表达式mynumber==3反转为3==mynumber,以此来捕获将相等运算符写成赋值运算符。
2.&&运算符
&&是顺序点,将首先判断左侧,在右侧被判定之前产生所有的副作用,若左侧为false,则不会对右侧进行判定。
3.strcmp
若s1和s2不同,则strcmp(s1,s2)返回非0值。
3.字符函数库cctype
isalpha():检查字符是否为字母字符
isspace():是否为空白
4.switch语句
若num为5,并且没有default,则程序调到switch后面的语句处执行。
break语句来确保只执行switch语句中的特定部分。
switch(chioce)
{
case1:cout<<"\a\n";
break;
case2:cout<<"\a\n";
break;
case3:cout<<"\a\n";
break;
case4:cout<<"\a\n";
break;
}
将上面的switch语句的break语句去掉,输入2,则会执行2,3,4和default中的所有语句。
5.break和continue语句
continue语句是程序跳过循环体的剩余部分,但不会跳过循环的更新表达式。
6.读取数字的循环
可以使用cin输入表达式的值来检测输入的是否为数字,若输入错误内容则需1)重置cin以接受新的输入,
2)删除错误输入
3)提示用户再输入
while(!(cin>>golf[i])){
cin.clear();//resetinput
while(cin.get()!='\n'){
continue;//getrid of bad input
}
cout<<"Pleaseenter a number: ";//提示用户再输入
}
7.文本I/O
输入行 38.5 19.2
charch;
cin>>ch;
输出:3
intn;
cin>>n;
输出:38
double x;
cin>>x;
8.写入到文本文件中
使用文件输出的主要步骤
1) 包含头文件fstream
2) 创建一个ofstream
3) 将该ofstream对象同一个文件关联起来
4) 就像使用cout那样使用该ofstream对象
ofstream outFile;//创建对象
outFile.open(“carinfo.txt”);//使用open将该对象与特定文件关联起来。
outFile.close();//使用完文件后,将其关闭。
在程序运行之前,文件carinfo.txt并不存在,方法open()将新建一个名为carinfo.txt的文件。若程序运行之前carinfo.txt存在,open()将首先截断文件,即将其长度截短到0,丢弃其原有的内容,将新的输出加入到该文件中。
9.读取文本文件
ifstream inFile;
ifstream fin;
inFile.open("123.txt");
char filename[50];
cin>>filename;
fin.open(filename);
//将文件名存储到filename数组中,将该数组用作open()的参数
检查文件是否被成功打开
inFile.open(“123.txt”);
if (!inFile.is_open())
{
exit(EXIT_FALLURE);//原型在cstdlib中
}
如果文件被成功打开,is_open将返回true。