这样运行不了怎么改?
#include <stdio.h>
typedef struct{
char name[30];
char num[30];
}user;
void main()
{
user userinfo;
char name[30];
char num[30];
scanf("%s%s",name,num);
printf("%s %s",name ,num);
userinfo.name=name;
userinfo.num=num;
printf("%s %s",userinfo.name,userinfo.num);
}
这样怎么不过,怎么改?
[解决办法]
#include <stdio.h>
typedef struct
{
char name[30];
char num[30];
}user;
void main()
{
user userinfo;
char name[30];
char num[30];
scanf("%s\n%s\n",name,num);
printf("%s\n %s\n",name ,num);
strcpy(userinfo.name,name);
strcpy(userinfo.num,num);
printf("%s\n %s\n",userinfo.name,userinfo.num);
}
#include <stdio.h>
#include <string>
typedef struct {
char name[30];
char num[30];
}user;
void main()
{
user userinfo;
char name[30];
char num[30];
scanf("%s%s",name,num);
printf("%s %s",name ,num);
//userinfo.name=name;
strcpy(userinfo.name,name);
strcpy(userinfo.num,num);
//userinfo.num=num;
printf("%s %s",userinfo.name,userinfo.num);
}
#include <stdio.h>
#include <string.h>
typedef struct {
char name[30];
char num[30];
} user;
int main() {
user userinfo;
char name[30];
char num[30];
fgets(name,29,stdin);
if ('\n'==name[strlen(name)-1]) name[strlen(name)-1]=0;
fgets(num,29,stdin);
if ('\n'==num[strlen(num)-1]) num[strlen(num)-1]=0;
printf("name=[%s],num=[%s]\n",name ,num);
strcpy(userinfo.name,name);
strcpy(userinfo.num,num);
printf("userinfo.name=[%s],userinfo.num=[%s]\n",userinfo.name ,userinfo.num);
return 0;
}