1、一维数组数组
例如,北京最近100年来每一年的平均温度值可保存在一个数组中,该数组可定义为:ide
float annual_temp[100];spa
这个定义会使得编译器分配100个连续的float变量的内存空间。数组元素的个数在编译时就必须固定,且最好定义为一个常量。这样,当数组元素的个数须要改变时,只要改变相应的常量便可:.net
const int NE=100;
float annual_temp[NE];blog
数组元素的下标从0开始计数。
内存
访问数组元素的方法是经过数组名及数组名后的方括号中的下标。例如,假定要设置上面定义的数组annual_temp的第15个元素值为11.5,则代码为:annual_temp[14]=11.5get
若是访问的数组元素不存在,会致使一个严重的错误。例如:编译器
annual_temp[100]=12.3; //错误,该数组的最大下标为99!it
初始化:io
案值放在一对大括号“{}”中,各初值之间用逗号隔开。例如:
int primes[]={1,2,3,5,7,11,13};
在上面的定义中,没有显示说明数组元素的个数,编译器会根据初值的个数和类型,分配足够的内存空间。本例中,primes将分配7个整型元素的内存空间。再看下面的例子:
int primes[10]={1,2,3,5,7};
数组元素的个数有10个,但初值只有5个。此时,只有前5个数组元素赋给了初值。
2、按位异或运算符 ^
参与运算的两个值,若是两个相应位相同,则结果为0,不然为1。即:0^0=0, 1^0=1, 0^1=1, 1^1=0
经过按位异或运算,能够实现两个值的交换,而没必要使用临时变量。例如交换两个整数a,b的值,可经过下列语句实现:
a=10100001,b=00000110
a=a^b; //a=10100111
b=b^a; //b=10100001
a=a^b; //a=00000110
按位异或运算符 ^ http://blog.csdn.net/kybd2006/article/details/3727218