我用devcpp写了一小段c代码
malloc出一个结构地址,然后把地址传给结构指针,为什么会出现warning甚至编译直接出错
代码是下面的
#include<stdio.h>
typedef struct _linked
{
int value;
struct _linked*next;
struct _linked*prev;
} linked;
int main(void)
{
linked*first_add=(linked*)malloc(sizeof(linked));
scanf("%d",first_add->value);
printf("%d",first_add->value);
return 0;
}
if (first_add)
{
scanf("%d", &first_add->value);
printf("%d", first_add->value);
}
1) malloc 申请到的空间要检查,不是null 才可以用, 你要加上条件判断
2)scanf 第二个参数是变量的地址, 要用 &
看上面的代码。
不知道你这个问题是否已经解决, 如果还没有解决的话: