在Dev-C++中运行为什么输出是这样的?
代码-1:intmain(){inta=0;intb;printf("b=%d\n",b);//b=1;return0;}此时输出结果是1;代码-2:intmain(){...
代码-1:
int main(){
int a = 0;
int b;
printf("b = %d\n",b); // b = 1;
return 0;
}
此时输出结果是 1;
代码-2:
int main(){
int a = 3;
int b;
printf("b = %d\n",b); // b = 1;
return 0;
}
此时输出结果还是 1;
代码-3:
int main(){
int a; // 或不声明变量 a
int b;
printf("b = %d\n",b); // b = 0;
return 0;
}
此时输出结果却变成了 0;
这是为什么?一般情况下变量b不应该是输出值是 0吗?为什么在变量b之前声明其它变量并赋值后变量b的初始值会变成 1?原理是什么?只有Dev-C++是这样吗? 展开
int main(){
int a = 0;
int b;
printf("b = %d\n",b); // b = 1;
return 0;
}
此时输出结果是 1;
代码-2:
int main(){
int a = 3;
int b;
printf("b = %d\n",b); // b = 1;
return 0;
}
此时输出结果还是 1;
代码-3:
int main(){
int a; // 或不声明变量 a
int b;
printf("b = %d\n",b); // b = 0;
return 0;
}
此时输出结果却变成了 0;
这是为什么?一般情况下变量b不应该是输出值是 0吗?为什么在变量b之前声明其它变量并赋值后变量b的初始值会变成 1?原理是什么?只有Dev-C++是这样吗? 展开
3个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询