gpt4 book ai didi

c - 使用 Uint32_t 读写字符串

转载 作者:太空宇宙 更新时间:2023-11-04 01:20:36 25 4
gpt4 key购买 nike

使用一些芯片,我试图保存 C 字符串,其中芯片仅适用于 Uint32_t 数字。

所以为了保存一个字符数组,我使用了这个:

            char data[]="lala"; 
uint32_t save; //save this to memo
memcpy(&save, data, 4);

然后,当我阅读它时,我得到一个指向 Uint32_t 数字的指针,其中每个数字都是一个字符串(例如第一个是“lala”) ,我必须从这些 Uint32_t 中提取字符串,但我得到的结果是空的:

uint32_t *data;
data = (uint32_t *) flash_record; //data pointer from some flash

//now loop over all numbers to read them:
for (uint8_t i=0;i<flash_len;i++)
{
char bytes[6];
char n = data[i];
bytes[0] = (n >> 24) & 0xFF;
bytes[1] = (n >> 16) & 0xFF;
bytes[2] = (n >> 8) & 0xFF;
bytes[3] = n & 0xFF;
for (int k=0;k<4;k++)
printf(message:%c,bytes[k]

}

我将如何循环提取单词?

最佳答案

问题在这里:

char n =  data[i];

应该是

uint32_t n = data[i];

关于c - 使用 Uint32_t 读写字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44154526/

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