如何解决对结构使用指针-无法读取正确的地址
我一直试图获得与我要在PIC上实现的结构一起使用的指针。我已经在Linux编译器上尝试过相同的代码,并且工作正常。我也尝试过将其剥离到基本内容,但无济于事。另外,我尝试了不使用指针的情况,并且可以正常工作。
这是我正在使用的代码:
struct circular_buf{
size_t tail;
size_t head;
size_t max;
};
struct circular_buf * cbuf;
并且在主要
cbuf = malloc(sizeof(struct circular_buf));
cbuf->tail = 22;
cbuf->head = 45;
cbuf->max =99;
当我打印出此纸时,它只能正确打印出最大的纸。但是,当我插入项目以将结构的最大值,尾部和头部分开时,效果很好。
struct circular_buf{
size_t spacer1; // seperatating the items so it reads correctly
size_t tail;
size_t spacer2; // seperatating the items so it reads correctly
size_t head;
size_t spacer3; // seperatating the items so it reads correctly
size_t max;
};
这是为什么,如果不执行此操作,我有什么办法可以纠正此内存错误?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。