gpt4 book ai didi

c++ - 通过 void 指针修改结构的内容

转载 作者:搜寻专家 更新时间:2023-10-31 01:13:26 25 4
gpt4 key购买 nike

请注意,我 95% 不熟悉指针。

所以这是我的困境,我有一个结构,我们称它为 foo

struct foo{
int a;
}

让我们创建一个 foo 的实例

foo test;

现在我想分配一个空指针指向这个

 void *ptest;
ptest = &test;

这一切都很好,但是当谈到修改内容时(即 foo 中的 int a),我不确定如何处理它。我试过这样的 static_cast:

static_cast<foo*>(ptest).a=0; 

但这也没有用。任何帮助,将不胜感激。谢谢

最佳答案

您正在将它转换为指针,因此您需要使用 * 运算符或使用 -> 运算符取消引用它。

选项 A:

*(static_cast<foo*>(ptest)).a=0

选项 B:

static_cast<foo*>(ptest)->a=0

关于c++ - 通过 void 指针修改结构的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12504991/

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