FatFs-FIL结构导致内存损坏 - STM32F7
问题描述:
STM32F7,GCC,FatFSFatFs-FIL结构导致内存损坏 - STM32F7
以下代码破坏retVal。如果您注释掉“FIL文件”,那么向量是好的(例如,向量只有一个对象创建的,但是当你检查它有一个荒谬的量)
std::vector<uint8_t> SDManager::Test()
{
std::vector<uint8_t> retVal(1);
FIL file;
retVal.push_back(0xFE);
asm("nop");
return retVal;
}
。但是一旦你把FIL结构放回来,它就会破坏向量。
下一个奇怪的事情,如果我要创建另一个向量,然后返回使用它作为函数返回对象。原始矢量变得很好,但是新返回的矢量变得损坏。
我对C++很陌生,所以我需要一些关于如何诊断这个问题的指导。
在此先感谢。
答
您是否实施了caddr_t sbrk(int incr)
? 如果不是这可能是问题。