gpt4 book ai didi

c - 使用 memcpy 将字符串复制到字符数组时出现段错误

转载 作者:行者123 更新时间:2023-11-30 21:45:03 26 4
gpt4 key购买 nike

我想在 char 数组中存储一个字符串,我尝试使用 memcpy() 来实现此目的,但遇到段错误。有人可以解释为什么吗?以及这样做的正确方法是什么。

使用 char * name;char name[100]; 哪个更好?

#include <stdio.h>

struct A
{
char * name;

};

typedef struct A A ;

int main()
{

A *a;

memcpy(a->name,"hello",sizeof(A));
printf("The value of name is %s",a->name);

return 0;

}

最佳答案

您必须为结构及其成员分配内存,然后才能在其中复制数据。

A *a = malloc(sizeof(A));
a->name=malloc(100); //change the size other then 100 what ever you want.

关于c - 使用 memcpy 将字符串复制到字符数组时出现段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25720907/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com