主题:一个小问题,
海不扬波
[专家分:0] 发布于 2008-02-26 10:36:00
一个问题,不大,但很头疼.代码如下
#include <stdio.h>
#include <math.h>
main()
{
int a;
int b;
int c;
c=a+b;
scanf("%d%d",a,b);
printf("%d",c);
}
如果直接输入输出常量,则正常
变量一参与就报个内存错误
"0x0040f1c8"指令引用的"0xcccccccc"内存。该内存不能为"weitten"。
环境是vc++ 6.0
回复列表 (共7个回复)
沙发
zengyuhang [专家分:40] 发布于 2008-02-26 11:26:00
怎么看不懂你说的是什么意思?
板凳
zengyuhang [专家分:40] 发布于 2008-02-26 11:33:00
scanf("%d%d",&a,&b)
3 楼
zzaqtf [专家分:70] 发布于 2008-02-26 11:48:00
scan参数需要地址,&a,&b才行
4 楼
shuukaki [专家分:850] 发布于 2008-02-26 12:07:00
根据的代码,你原先的写法没有意义。
#include <stdio.h>
#include <math.h>
void main()
{
int a;
int b;
int c;
[color=800000] scanf("%d%d",&a,&b);
c=a+b;
printf("%d",c);[/color]
}
应该是先输入数据,再做运算。
5 楼
yulei259471 [专家分:730] 发布于 2008-02-26 12:36:00
取地址呀&
6 楼
engine01 [专家分:10] 发布于 2008-02-27 10:16:00
支持4楼的说法,先输入数据,再做运算![em9]
7 楼
海不扬波 [专家分:0] 发布于 2008-02-27 11:03:00
非常感谢..
N长时间没用C了,把最基本的忘了..
感谢各位..只是我不知道怎么加分..是不是要自己有分才能给别人加.
我来回复