1:for循环组成部分
①设置初始值;
②执行测试,看看循环是否应当继续进行;
③执行循环;
④更新用于测试的值;
例如,
for (i=0;i<10;i++)
{...};
2:c++常用的方式是,在for和括号之间加上空格,而省略函数名与括号之间的空格,对于其他控制语句(如if和while),处理方式相同。另外,缩进for循环体,使它看起来更显著。
3:递增运算符(++)和递减运算符(--)
例如,
a=20;b=20;
则a++ =20;++b=21;
则a=21;b=21;
a++表示先使用当前值,然后加1,++b表示先加1,然后使用新值计算。
4:递增运算符(++)和递减运算符(--)和指针
例如,
double arr[5]={21.5,32.8,23.4,45.2,37.4};
double *pt =arr;
++pt;
前缀递增、前缀递减和解除引用运算符的优先级相同,以从右到左的方式进行结合。后缀递增和递减的优先级相同,但比前缀运算符的优先级高,这两个运算符以从左到右的方式进行结合。例如,
*++pt表示先将++用于pt(因为++位于*右边),然后将*用于被递增后的pt;
*ppt++表示先将++用于pt,然后将*用于被递增pt;
5:组合赋值运算符
+=,-=,*=,/=,%=,将左运算符和右运算符的运算结果赋给左运算符。
6:复合语句
花括号来构造一条复合语句,代码块由一个花括号和多条语句组成,被视为一条语句 。
特性:
①如果在语句块定义一个新的变量,则仅当程序执行该语句块时,该变量才存在。执行完此语句块,变量被释放,此变量只在该语句块可用。
②如果在此语句块中定义了一个新变量,并且在外部语句中也定义了一个相同的旧变量,则在语句块中,新变量隐藏旧变量,语句块结束,才显示旧变量。
7:逗号运算符
特性:
①允许将两个表达式放到c++句法只允许放一个表达式的地方,中间逗号分隔;
例如;++j,--i;
②首先先计算第一个表达式,然后计算第二个表达式,逗号表达式的值是第二部分的值;
例如,catalog =17 , 24;则catalog的值为24.
③在所有运算符中,逗号表达式的优先级最低。
8:字符串比较
①c-风格字符串
假设要知道字符数组中的字符串是不是mate。如果word是数组名,下面的测试可能并不像我们想象的那样工作:
word = "mate" ;
数组名是一个地址,同样,用引号括起来的字符串也是地址。因此,上面关系表达式不是判断两个字符串是否相同,而是查看他们是否存储在相同的地址。
由于c++将c-风格字符串视为地址,因此如果用关系运算符来比较他们,可能不会得到满意的结果,所以使用c-风格字符串库中的strcmp()函数用来比较。该函数接收两个字符串地址为参数,意味着可以是指针、字符串常量、字符串数组名。如果两个字符串相同,该函数返回0;如果第一个字符串按子母顺序排在第二个字符串之前,则函数返回一个负数值;如果如果第一个字符串按子母顺序排在第二个字符串之后,则函数返回一个正数值。
例如,使用ASCII码时,所有大写字母的编码都比小写字母小,所以按顺序排列大写字母将位于小写字母之前。因此,字符串“Zoo”在字符串“aviary”之前。
还有,虽然不能用关系运算符来比较字符串,但却可以用他们来比较字符,因为字符实际上是整形。例如,
for (ch='a';ch<='z';ch++) ;
cout<<ch;
②比较string类字符串
可以使用关系运算符进行比较,使用时,至少有一个操作数为string对象,另一个操作数可以是string对象,也可以是c-风格字符。