嵌入式、单片机等硬件软件开发中,经常会用到结构体或者数组,但是在调试中我们经常会发现数组或者结构体变量的内容莫名其妙的被修改了,首先我们确认的是肯定不是代码中我们本意的修改。
- 解决方法:
出现这种问题基本上就是数组或者指针出现溢出导致的,这里的数组或者指针是指代码中所用得到的所有的数组或者指针,这个时候仔细查看哪里使用数组或者指针了,然后确认下哪里出现空指针或者数组索引指到了超过数组定义的范围了,问题一般就可以解决了,基本上大部分都是这个原因。至于有些网友说的堆栈、或者内存溢出的原因很少,因为编译器在对代码进行编译时对这类问题是进行了检查的,一般不需要我们自己做修改。