如何解决某个变量突变的问题
1、首先确认你的变量是哪个,现在这里定义为err_variable.这个是你遇到难题的地方。因为变量相互的影响对程序的稳定性有影响。
2、每个工程都有编译文件。在MPLAB软件中有.map文件,在你工程文件夹下找到.map文件并打开。其他的编译软件有类似的文件。打开该文件。
3、在工程.map文件中找到err_variable变量所在的位置。可以用Find方法。也可以用Ctrl+F快捷方式。
4、找对该变量有干扰的变量。从该变量往上找,在图中找到变量1处与2处有个较大的跳跃,说明变量1是个数组,(如果是自己定义的也知道该变量的属性)该数组的值越界就会造成后面变量的突变。C语言编程对数组不检测是否越界。所以如果遇到莫名其妙的问题就要从这个方法入手找前面的数组是否越界。(一般是最近的数组越界造成的)如果确认没有问题就要继续往期按找了。理由如下:在编译时变量是按序堆列的,是逐个排放的,位置是连续的。一旦数组越界就会造成后面变量有突变。
5、找突变有技巧的。主要是多维数组。和Struct类型的数组的变量,这些类型如果一旦越界就造成后面很多问题。按这种方法处理很快能解决变量无缘无故的突变问题。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:68
阅读量:33
阅读量:68
阅读量:41
阅读量:27