scanf加载struct-> char []时出现问题

| 我正在处理此问题: 我一直在创建链接列表(使用结构),我想加载用户的输入。 当我调试此代码时,调试器在scanf行上停止。
typedef struct Person{
char name[64];
int number;
} Person;

Person* record = malloc(sizeof(Person));
printf(\"Input name: \\n\");
scanf(\"%63s\", record->name);
我知道(* record).number == record-> number和\'&\'用于获取变量的地址,但是如果我想使用scanf作为变量,我不知道如何以最简单的方式解决问题加载输入。 提前致谢。     
已邀请:
当使用gdb调试程序并遇到scanf语句时,调试器将提示用户输入。如果您此时输入内容并按Enter键,则执行将继续。 例如 1.如果源代码为以下文件名\'llist.c \'
#include <stdio.h>
#include <stdlib.h>

typedef struct Person{
char name[64];
int number;
} Person;

int main()
{

    Person* record = malloc(sizeof(Person));
    if(record == NULL)
    {
       printf(\"Memory allocation failed\\n\");
       return;
    }
    printf(\"Input name: \\n\");
    scanf(\"%63s\", record->name);
    printf(\"Name %s\\n\", record -> name);
    return 0;
}
使用debug选项将其编译为   gcc -g -o list llist.c 以
gdb ./list
运行调试器,并输入命令enter3ѭ开始执行程序。 当提示您输入时,输入任何字符串,然后按Enter。 然后将字符串打印到终端。     

要回复问题请先登录注册