gpt4 book ai didi

c - EEPROM 存储和初始化从整数生成指针,无需强制转换

转载 作者:行者123 更新时间:2023-11-30 15:17:47 24 4
gpt4 key购买 nike

我收到警告:

Initialization makes pointer from integer without a cast

这是我的代码:

case 4:
{
uint8_t* adr = 12;
writeEEPROM((uint8_t *) adr, &z, sizeof(z));
}

写EEPROM有:

void writeEEPROM( uint8_t* eeAddress, uint8_t* buffAddress, uint32_t byteCount ){....

我的问题出在哪里。

也许问题 2:如果我将 union 地址发送到函数 writeEEPROM 中,可能吗?

最佳答案

问题在于代码中从整数生成指针而不进行强制转换的部分。更改为 uint8_t* adr = (uint8_t*)12;

it is possible if I send union address into a function writeEEPROM?

是的,您可以写入任何类型的数据。但是,请注意结构/union 的填充和对齐。 EEPROM 与 RAM 变量具有不同的对齐要求,这是很常见的。

关于c - EEPROM 存储和初始化从整数生成指针,无需强制转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31982518/

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