小编Nov*_*ane的帖子

尝试在结构上使用scanf时出现分段错误

我对c很陌生,此刻我也非常沮丧.这是我的代码:

typedef struct {

char* fName;
char* lName;
char* pNum;
char* address;
char* email;
} contactInfo;

void addContact(){
contactInfo *contact;
contact = (contactInfo *) malloc (sizeof(contactInfo));

printf("\n[Add a contact]\nFirst Name: ");
scanf("%s", contact->fName);
printf("%s", contact->fName);
}
Run Code Online (Sandbox Code Playgroud)

出于某种原因,当我输入scanf的值时,它会给我一个分段错误.如果我尝试在contact-> fName前添加&,我也会收到错误.

代码有什么问题?

c malloc struct scanf segmentation-fault

3
推荐指数
1
解决办法
3809
查看次数

标签 统计

c ×1

malloc ×1

scanf ×1

segmentation-fault ×1

struct ×1