初始化和赋值——“孪生兄弟”
很多同学,对初始化和赋值的概念混淆不清,这也很正常。面对两个孪生兄弟,不仔细分辨恐怕也不知道谁是哥哥,谁是弟弟。
- 初始化和赋值是包含和被包含的关系。初始化和赋值都能够使得变量具有确定的值。
所不同的是:
初始化:指定义变量的同时给变量赋值这个操作,叫初始化。有些情况下,初始化可以有的操作,赋值不能有。例如:
数组的整体赋值:
int a[5] = {1 ,2, 3, 4, 5}; //正确
int a[5];
a[5] = {1 ,2, 3, 4, 5}; //错误
字符串的整体赋值
char a[4] = {"abcd"}; // 正确
char a[4]; //错误
a[4] = {"abcd"};
所以,给变量初始化一定是给变量赋值,但给变量赋值不一定是初始化。