将字符添加到结构中
Adding Characters into Struct
我正在尝试将字符读入链表(我制作这个简单的测试代码只是为了尝试读入字符),但由于某种原因我无法让它读入字符值。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct node
{
char name[50];
struct node *next;
}*head;
void add(char AddName);
int main()
{
head = NULL;
char TempName[50];
printf("What Name");
scanf(" %s", TempName);
add(TempName);
printf("%s",head->name);
return 0;
}
void add(char AddName)
{
struct node *temp;
temp = (struct node*)malloc(sizeof(struct node));
strcpy(temp->name,AddName);
head = temp;
head->next = NULL;
}
我知道这不是链表的工作方式我只是这样做是为了尝试能够 运行 将单个字符名称放入结构中并将其打印出来。 (我应该可以输入名字 Bob 并打印出 bob)
我认为你的函数参数定义有误。试试这个:
void add(char *AddName)
{
....
}
我正在尝试将字符读入链表(我制作这个简单的测试代码只是为了尝试读入字符),但由于某种原因我无法让它读入字符值。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct node
{
char name[50];
struct node *next;
}*head;
void add(char AddName);
int main()
{
head = NULL;
char TempName[50];
printf("What Name");
scanf(" %s", TempName);
add(TempName);
printf("%s",head->name);
return 0;
}
void add(char AddName)
{
struct node *temp;
temp = (struct node*)malloc(sizeof(struct node));
strcpy(temp->name,AddName);
head = temp;
head->next = NULL;
}
我知道这不是链表的工作方式我只是这样做是为了尝试能够 运行 将单个字符名称放入结构中并将其打印出来。 (我应该可以输入名字 Bob 并打印出 bob)
我认为你的函数参数定义有误。试试这个:
void add(char *AddName)
{
....
}