将字符添加到结构中

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)
{
....
}