重写strcmp函数

今天调试程序需要在串口中断里使用strcmp,在网上查找的说strcmp是可重入的。但实际测试结果确实不可重入的,测试环境是

IAR for ARM8.1

STM32l151

测试过程中主循环在不停的调用strcmp,中断里满足特定条件会调用strcmp。所以单步调试的时候就会发现当满足特定条件的时候,程序偶尔会死在调用strcmp的库函数里。

使用《C参考手册.chm》查询

 

所以就重写一个吧,也不用考虑算法,直接百度一下网上有大堆的代码,贴过来吧:

使用重写的strcmp测试之后就没有问题了。

2018-03-15
1,159 views