有效的下标范围 [0,数组的大小-1]‘
数组理解
下标只是把这个数组里的变量做了一个标记,跟变量的值没有关系
必须先定义数才能使用下标变量。
在C 语言中只能逐个地使用数组下标变量,而不能一次引用整个数组。例如,输出有10个元素的数组必须使用循环语句
逐个输出各下标变量:
for(i=0; i<10; i++)
printf("%d";a[i);
而不能用一个语句输出整个数组。
超纲部分
#include <stdio.h>
int main()
{
int a[2];
a[0]=2;
a[1]=5;
printf("%d\n",a[0]); //正常输出2
printf("%d\n",a[1]);//正常输出5
}
#include <stdio.h>
int main()
{
int a[2];
a[0]=2;
a[1]=5;
printf("%d\n",&a[0]);//输出2293432
printf("%d\n",&a[1]);//输出2293436
//&a[0]和&a[1]表示的是a[0],a[1]的地址,而他们的地址又相差4(待补),所以输出的值相差4
}
又回来了!上课部分
因为把一个数组传入函数时实际上传入的是地址(或者叫指针?)这样的话在函数内部就能修改数组的值,而为了保护数组的值不被修改就可以在数组前加一个const
小技巧
sizeof (a[ ])/sizeof (a[0])就等于数组中单元的个数
sizeof是静态运算符,只会给出圆括号内数据类型所占的字节,圆括号内的表达式并不会进行计算
数据类型
正负无穷大和不存在只能用浮点表达
浮点数在一定范围内是不精确的
没有特殊需求,整数型用int,浮点数用double
在ACSII码表中大写字母和小写字母并不连续
强制类型转换只是转换一个新类型的值,并不会改变被转换值的类型