我试图将字符串中的名字和姓氏从字符串存储到结构中,但我得到了(警告:传递strcpy的参数1使得整型指针没有转换),我不确定在哪里把strcpy试图把它放在while循环中得到了有意义的错误。但不知道在哪里放置的strcpy EDITED令牌化C中的字符串
struct trip
{
char first_name;
char last_name;
}
int main(void)
{
struct trip travel[12];
}
char input_name(struct trip travel[MAXTRIP], int index)
{
int name_read, length;
int name_bytes = 100;
char *name, *word;
getchar();
printf("Please enter name:\n");
name = (char *)malloc(name_bytes + 1);
name_read = getline (&name, &name_bytes, stdin);
word = strtok(name, ",");
while (word != NULL)
{
strcpy(travel[index].first_name, word);
word = strtok(NULL, ",");
}
}
什么是“单词”?什么是'名称'?你如何宣布你的变量?你真的得到那个错误信息吗? 'strcpy'不会在程序中的任何地方使用。 – 2011-03-26 18:30:19
请张贴您的实际代码。没有上面显示的'strcpy',你没有显示大部分变量是什么。 – 2011-03-26 18:30:46
在你的结构中,你只能容纳两个字符:一个用于名字,另一个用于姓氏。如果你想容纳更多的字符定义一个数组或者一个指向数组的指针(char *)并动态地分配内存。 – Robertas 2011-03-26 18:38:05