c - 将字符添加到结构体中

标签 c string 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;
}

我知道这不是链接列表的工作方式,我只是这样做是为了尝试能够将单个字符名称运行到结构中并将其打印回来。 (我应该能够输入鲍勃的名字并打印出鲍勃)

最佳答案

我认为你的函数参数定义是错误的。试试这个:

void add(char *AddName)
{
....
}

关于c - 将字符添加到结构体中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30536006/

相关文章:

c - 什么会导致 gettimerid() 失败,将 errno 设置为 ENOSPC(未记录)?

c# - 无法从字符串中收集子字符串

ios - 创建结构的空数组给我一个错误

java - 将 char 集合转换为不带逗号和方括号的字符串

c - ( C ) 无法找到动态分配结构的核心转储错误的原因

c++ - 错误 : invalid initialization for struct in C++

c - gcc 的静态编译错误

c - 1[&array] 是 &array[sizeof(array)/sizeof(array[0])] 的合适替代品还是太混淆了?

c - 格式化字符串攻击

c++ - 不同 gcc 版本的 bool 到 string 转换的不同行为