找程序错误?
#include <stdio.h>
main()
{
int *p=&a,a;
printf("input a: ");
scanf("%d %d",a);
}
这个代码问题再那里?
[解决办法]
#include <stdio.h>
main()
{
int *p=&a,a;//a在定义前就被使用了
printf("input a: ");
scanf("%d %d",a);//只输入1个数字,却写了2个%d
}
[解决办法]
scanf("%d", &a);
[解决办法]
#include <stdio.h>
main()
{
int a,
int *p=&a;
printf("input a: ");
scanf(" %d",&a);
}
[解决办法]
int *p=&a,a;
改成
int a=0;
int *p=&a;
[解决办法]
#include <stdio.h>
main()
{
int *p=&a,a;
printf("input a: ");
scanf("%d %d",a);
}
==============================
#include <stdio.h>
int main()
{
int a, *p = &a;
printf("input a: ");
scanf("%d",&a);
return 0;
}
[解决办法]
上面是错误的
下面是正确的
[解决办法]
int *p=&a,a;
这句话定义是有问题的。在没定义之前,甚至是声明a之前,编译器是找不到变量a的。所以,就无法给指针赋值。
int a; int *p = &a;
这样不知是否是你的意思??