gpt4 book ai didi

c - 将数组指针传递给结构并访问数组

转载 作者:太空宇宙 更新时间:2023-11-04 07:33:34 24 4
gpt4 key购买 nike

我需要在结构中存储指向 char 数组的指针,然后修改/访问数组内容。我该怎么做?

我只能想到类似的东西,但我没有得到完整的可编译解决方案。

struct foo {
unsigned char *array;
};

然后:

unsigned char array[512];
struct foo *foo;
foo->array = array;

在接收指向结构体指针的另一个函数中:

*(foo->array[0]) = 'K';

最佳答案

您的代码几乎没问题:

foo->array[0] = 'K';

您的代码 *(foo->array[0]) 的问题是您尝试取消引用甚至不是指针的 char

您还需要为结构分配内存 - 当前 foo 指向某个随机内存位置,访问很可能会使您的程序崩溃:

struct foo *foo = malloc(sizeof(*foo));

关于c - 将数组指针传递给结构并访问数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10957292/

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