首页 > 代码库 > 初始化赋值时a = b = 常数 的易犯错误

初始化赋值时a = b = 常数 的易犯错误

 1 #include <stdio.h> 2 #include <stdlib.h> 3 int main() 4 { 5     int a,b; a=b=2; //成功                             6     //int a = b = 2;失败 7     printf("%d %d",a,b); 8     system("pause"); 9     return 0;10 }

新手注意直接初始化变量的 int a = b = 2这样的写法会导致编译失败。 
如何能让这个语句正确呢,那就在前面声明好b,并且给它赋值,要不要是不能把变量赋值给变量的。修改如下即可:

#include <stdio.h>#include <stdlib.h>int main(){    int b = 2; //声明并赋予其值                      int a = b = 2;    printf("%d %d",a,b);    system("pause");    return 0;}

经上分析,出错的原因可知,一是赋值问题,二是变量声明问题,是他们两的综合结果。