变量的初始化就是在定义变量的时候,直接对变量进行赋值操作。
初始化的方式一般有如下两种:
1、直接对变量进行赋予常量数值进行初始化;
2、通过同类型变量进行初始化。
举例说明如下:
// 以下属于第1种初始化方式int a1=5 // 整型变量的初始化
int b1[]={1,2,3,4} // 整型数组的初始化
char str1[]="abcd" // 字符数组的初始化
// 以下属于第2种初始化方式
int a2 = a1 // 整型变量的初始化
int b2[4] = b1 // 整型数组的初始化
char str2[4] = str1// 字符数组的初始化
char *p = str1 // 字符指针的初始化
1、直接逐个初始化字符数组:字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素。
char str[10]={ 'I',' ','a','m',' ',‘h’,'a','p','p','y'}
注意:如果花括号中提供的字符个数大于数组长度,则按语法错误处理;若小于数组长度,则只将这些字符数组中前面那些元素,其余的元素自动定为空字符(即'\0'
)。
2、用字符串常量来初始化字符数组:
在c语言中,将字符串作为字符数组来处理。因此可以使用字符串来初始化字符数组。
char str[]={"I am happy"}
也可以省略花括号。
char str[]="I am happy"
但是,上述这种字符数组的整体赋值只能在字符数组初始化时使用,不能用于字符数组的赋值,字符数组的赋值只能对其元素一一赋值,下面的赋值方法是错误的。
char str[]
str="I am happy"//错误,字符数组的赋值只能按元素一一赋值