将表达式variable==value反转为value==variable,以此来捕获将相等运算符误写为赋值运算符的错误很有效。
一般来说,编写能让编译器能够发现错误的代码,比找出导致难以理解的错误的原因要容易的多。
如果给读取int值的程序输入一个过大的值,很多C++的实现只是将这个值截短为合适的大小,并不会通知丢失数据,所以要将可能的int值作为double值或long long值来读取。
逻辑运算符的优先级小于关系运算符,逻辑AND运算符的优先级高于逻辑OR运算符。
标识符and,or,not都是C++保留字,但不是C语言保留字,C语言可以将它们用作运算符,只要在程序中包含了iso646.h,C++不要求使用头文件。
字符函数库cctype
函数名称 返回值 isalnum( ) 如果参数是字母或数字,返回true isalpha( ) 如果参数是字母,返回true iscntrol( ) 如果参数是控制字符,返回true isdigit( ) 如果参数是数字(0-9),返回true isgraph( ) 如果参数是空格以外的打印字符,返回true islower( ) 如果参数是小写字母,返回true isprint( ) 如果参数是打印字符(包括空格),返回true ispunct( ) 如果参数是标点符号,返回true isspace( ) 如果是标准空白字符,返回true issupper( ) 如果是大写字母,返回true isxdigit( ) 如果是十六进制数字,返回true tolower( ) 如果是大写字符,返回它的小写,否则返回该参数 toupper( ) 如果是小写字符,返回它的大写,否则返回该参数 首先,读取文件不应超过EOF,遇到EOF,eof( )返回true;其次,程序可能遇到不匹配的情况,方法fail( )返回true;最后,可能出现意外问题,例如:文件受损或硬件故障,方法bad( )返回true;方法good( )在没有发生任何错误时返回true.