C++中有一个常被用来代替if else的条件运算符?:,其语法格式为
ecpression1 ? expression2 : expression3;如果表达式1为true,则整个表达式的值为表达式2的值,否则为表达式3的值。
switch语句能够根据表达式的值跳转到每个标记值处的语句块,其语法结构如下:
switch(integer expression) case label1:statement(s); case label2:statement(s); ... (default):statement(s);语句根据表达式的值跳转到相应标记值处执行语句,当没有满足相应的值时,执行default语句,default语句是可选的,若没有则直接执行switch下面的语句。
对于文件输入,C++使用了类似cout的东西,在我们进行文件输入时需要做好一些准备:
必须包含头文件iostream、fstream;需要声明一个ofstream变量;必须指明命名空间std;需要将ofstream对象与文件关联起来;使用完文件后需要用close方法关闭。 下面演示一下如何声明ofstream变量并进行文件关联: ofstream outfile;//declared a ofstream variable; outfile.open("filename.txt");//associate a fileopen可以新建一个不存在的文本文件,若这个文本文件存在,在进行输入时默认的会将原文本长度截短为零,原数据丢失。
对于文件读取,其准备条件和文件输入类似,也必须包含iostream、fstream等头文件,需声明ifstream变量并与文件关联,可以使用ifstream方法get()读取一个字符,使用getline()读取一行字符。结合ifstream对象和eod()、fail()方法判断读取是否成功。 下面演示一下如何声明ifstream变量并进行文件关联:
ifstream infile;//declared a ifstream variable; infile.open("filename.txt");//associate a fileopen对一个文本文件进行读取时只能读取已经存在的文本文件,若文件不存在会导致后面的输入出现错误。检查文件是否被成功打开的首要方法是使用方法is_open(),下面是事例:
infile.open("bow.txt"); if (!infile.is_open()) { exit(EXIT_FAILURE); }其中exit原型是在头文件cstdlib中定义的。