FATFS- FIL结构会导致损坏的内存-STM32F7
FatFs - FIL Struct causes corrupted memory - STM32F7
stm32f7,gcc,fatfs
以下代码损坏了退化。(例如,向量仅使用一个对象创建,但是当您检查它的数量时(
std::vector<uint8_t> SDManager::Test()
{
std::vector<uint8_t> retVal(1);
FIL file;
retVal.push_back(0xFE);
asm("nop");
return retVal;
}
如果您评论" fil file",则向量很好。但是,一旦您将FIL结构重新发挥作用,它就会破坏矢量。
下一个奇怪的事情,如果我要创建另一个向量,然后返回将其用作函数返回对象。原始向量变得很好,但是新返回的向量被损坏。
我是C 的新手,所以我需要一些有关如何诊断此问题的指导。
预先感谢。
您是否实现了caddr_t sbrk(int incr)
?如果不是这样,这可能是问题。
相关文章:
- 如何针对特定情况调试和修复此双自由内存损坏问题
- 正在调试 malloc():新内存损坏
- 仅特定内核计数上的 MPI 内存损坏
- C++程序错误:malloc():内存损坏
- 内存地址是否由于未对齐的内存地址而损坏?
- 调用std::函数成员时内存损坏
- 通过分配大量内存来跟踪堆损坏
- C++ 内存损坏检测
- 由于标头中的 #define 不匹配而导致内存损坏
- C STD ::线程中的种族状况或内存损坏
- malloc()内存损坏仅通过为特定数量编写int数组
- 字符串标记化期间的内存损坏
- 从检测到 glibc 正常退出 - malloc():内存损坏
- 放置在外部 DLL 中的类中的字符串数据的内存损坏
- std :: string ::擦除会导致内存损坏
- 编译器如何检测内存损坏
- 获得MAC地址的代码似乎会损坏内存,但仅在发布构建中而不是调试构建
- Visual Studio在使用sockaddr_storage时会损坏内存
- 构造函数中的字段初始化会损坏内存
- 字符串结束字符会损坏内存吗?缓冲区[大小]='\0';