gpt4 book ai didi

c++ - 成员引用基类型 'int' 不是结构或 union

转载 作者:太空狗 更新时间:2023-10-29 21:26:54 25 4
gpt4 key购买 nike

我有以下代码:

void setup()
{
address_t sp, pc;

sp = (address_t)stack1 + STACK_SIZE - sizeof(address_t);
pc = (address_t)f;


sigsetjmp(jbuf[0],1);
(jbuf[0]->__jmpbuf)[JB_SP] = translate_address(sp);<----ERROR
(jbuf[0]->__jmpbuf)[JB_PC] = translate_address(pc);<----ERROR
sigemptyset(&jbuf[0]->__saved_mask);<----ERROR


sp = (address_t)stack2 + STACK_SIZE - sizeof(address_t);
pc = (address_t)g;

sigsetjmp(jbuf[1],1);
(jbuf[1]->__jmpbuf)[JB_SP] = translate_address(sp);<----ERROR
(jbuf[1]->__jmpbuf)[JB_PC] = translate_address(pc);<----ERROR
sigemptyset(&jbuf[1]->__saved_mask);<----ERROR

}

知道这个错误是什么意思吗?

最佳答案

sigjmp_buf 的类型(sigsetjmp() 作为第一个参数)是不透明的——这不是您的代码期望的类型案件。显然,这里是一个简单的 int,而不是指向结构的指针。

如果您想了解 sigjmp_buf 的内部结构,您需要了解它是如何在该特定平台上实现的(显然代码不可移植)。

关于c++ - 成员引用基类型 'int' 不是结构或 union ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10336336/

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