新手关于变量初值定义的问题
初学C不久,按照教程的方法试了一下多个同种类型变量一起赋初值,代码如下,可是调试的时候输出的值变成了c=-858993455。搞不懂哪里出错了,求各位指导!#include <stdio.h>
void main()
{
int a,b=5;
int c;
c=a+b;
printf("c=%d\n",c);
}
#include <stdio.h>
void main()
{
int a,b=5;//a 没有给予赋值。
int c;
c=a+b; * /因a 没有给予赋值;所以取分配内存的随机值,结果如你所见,如果你重新编译,结果可能也会不一样 /*
printf("c=%d\n",c);
} 如果想给a赋值,应该如此 :
inta=b=5;
或者 inta=X(任意整数),b=5; karlyes 发表于 2017-7-3 00:03
如果想给a赋值,应该如此 :
inta=b=5;
或者 inta=X(任意整数),b=5;
如果想给a赋值,应该如此 :
inta=b=5;这是语法错误 #include <stdio.h>
void main()
{
// int a,b=5;//a未被初始化
int a = 5, b = 5;//对ab都进行初始化
int c;
c=a+b;
printf("c=%d\n",c);
}
最好养成习惯,定义了一个变量就直接完成初始化过程。 int a,b=5;
等同于
int a;
int b = 5;
也就是说你的a没有赋值,参与运算就会导致结果溢出。
求道于盲 发表于 2017-7-3 01:57
这是语法错误
你编译一下,好不?这是正确的语法! karlyes 发表于 2017-7-6 22:53
你编译一下,好不?这是正确的语法!
多看书 少说话
页:
[1]