例题要求:让用户从键盘输入要保存的姓名和电话号码
下面的代码是我写的,在运行的时候当我输入第一个人的姓名、电话号码后回车就好报错?这是为什么?
当我把
char*name 改为 char name[21]
char *num 改为 char num[12]
运行就OK了,这两种定义有什么区别?
#include <stdio.h>
int main()
{
//定义变量
int i;
//先定义一个结构体并且定义一个结构数组
struct TXL
{
char *name;
char *num;
}txl[2];
//从键盘输入通讯录中联系人的姓名、电话号码
//请输入联系人的姓名
printf("请输入联系人的姓名和电话号码格式为:姓名 电话号码\n");
for(i=0;i<2;i++)
{
scanf("%s %s",txl.name,txl.num);
}
//遍历通讯录
printf("打印出通讯录中的内容\n");
for(i=0;i<2;i++)
{
printf("姓名:%s\n电话号码:%s\n",txl.name,txl.num);
printf("\n");
}
}
|
|