C相当于C ++指针密集型例程

时间:2013-12-28 21:59:05

标签: c++ c pointers embedded

以下代码用于嵌入式目标,通过访问内存中struct结构中的各个字节并将其写入EEPROM,将结构(类型为Config)保存到eeprom。这种指针用法的C等价物是什么?

int EepromSaveBlock(int ee, const Config& value)
{
    const byte* p = (const byte*)(const void*)&value;
    unsigned int i;

    for (i = 0; i < sizeof(value); i++)
    {
        EEPROM.write(ee++, *p++);
    }
    return i;
}

1 个答案:

答案 0 :(得分:3)

int EepromSaveBlock(int ee, const Config* value)
{
    const byte* p = (const byte*)value;
    unsigned int i;

    for (i = 0; i < sizeof(*value); i++)
    {
        EEPROM.write(ee++, *p++);
    }
    return (int) i;
}