本帖最后由 rindy 于 2017-9-2 11:53 编辑
假如有这样一个结构体数组,怎么存入flash呢,并且原样读写出来,之前只写过一些简单变量的存储与读写操作,不知道结构体怎么操作
struct User
{
char user_physical[20];
char user_custom[20];
char user_pa[20];
char user_flag;
};
struct User user1[60];//添加60条数据,现在要把这60条结构体数据存放到flash需要怎么操作?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
用共用体来解决存储的问题。很简单
[mw_shl_code=c,true]typedef union User {
struct{
char user_physical[20];
char user_custom[20];
char user_pa[20];
char user_flag;
}Source;
char all[20+20+20+1];
}USAER;
USAER user[10];
user.all[0][0] =1;
printf("%d ",user.Source.user_physical[0]);[/mw_shl_code]
输出结果是1所以只需要写入共用体的user.all,这样就能把结构体写入了。
共用体的内存空间是共享的,反正就当一个数组读取存储就可以了。
一周热门 更多>