c语言问题,怎么给结构体数组赋值一个字符串
c语言问题,怎么给结构体数组赋值一个字符串怎么给结构体数组负值一个字符串struct{char*name;intn;}people[3]={{"aimi",0},{"mi...
c语言问题,怎么给结构体数组赋值一个字符串怎么给结构体数组负值一个字符串struct
{
char *name;
int n;
}people[3]={{"aimi",0},{"mike",0},{"jome",0}};
这样子为什么不行? 展开
{
char *name;
int n;
}people[3]={{"aimi",0},{"mike",0},{"jome",0}};
这样子为什么不行? 展开
2个回答
展开全部
/*因编译器而异,我的编译器就可以这样赋值。对于你的,首先检查你的代码中的标点符号是否是英文标点符号。还是不行的话,可以这样,看例子:*/
#include<stdio.h>
#include<stdlib.h>
struct
{
char *name;
int n;
}people[3];
int main()
{
char *arr[3]={"aimi","mike","jome"};
int i;
for(i=0;i<3;i++)
{
people[i].name=arr[i];
people[i].n=0;
printf("%s %d\n",people[i].name,people[i].n);
}
system("PAUSE");
return 0;
}
#include<stdio.h>
#include<stdlib.h>
struct
{
char *name;
int n;
}people[3];
int main()
{
char *arr[3]={"aimi","mike","jome"};
int i;
for(i=0;i<3;i++)
{
people[i].name=arr[i];
people[i].n=0;
printf("%s %d\n",people[i].name,people[i].n);
}
system("PAUSE");
return 0;
}
2017-08-10
展开全部
strcpy(people.name, "mike");
~
~
~
~
~
~
追问
我试了一下,发现按你这种方法,定义时不能用指针,应该给他一个数组空间,才不会出错。这是为什么呢?谢谢大佬
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询