我有这个问题,我的名字是 char[20],如果我插入一些字符,数组就会溢出并写入另一个数组(认知)。
我试图用 puts() 改变 scanf(),但最后一个不能正常工作,因为它跳出输入并且什么也不读。
有人知道解决方案吗?
这是代码
void addStudent(){
struct student s;
printf("Inserire Nome: ");
scanf("%20s",s.nome);
printf("\nInserire Cognome: ");
scanf("%30s",s.cognome);
printf("\nInserire eta': ");
scanf("%d",&s.anni);
}
结果
Inserire Nome: cjhsdjkhbsdkhfgsdjkhfgskjhgjkhsfs
Inserire Cognome:
Inserire eta':