|
如题,在STM32F103VE处理器中运行atoi 函数就会死掉,在keil下能够编译通过,大致代码如下:
vu8 GPGSV[120];
u8 *p1;
p1=(u8*)GPGSV;
p1=(u8*)strstr(p1, ",") + 1;
USART_Send_Byte(atoi(p1));
有如下警告:
src\main.c(257): warning: #223-D: function "atoi" declared implicitly
但是这个警告应该是没关系的,我用到的标准C函数都有这个警告的,
程序是用来处理GPS模块发来的数据的,数组GPGSV中是有数据的,而且第一个逗号后的数据只有一位,不会越界,紧接着又是逗号,应该会自动识别的,
最后一句串口发送是用来验证转化结果是否正确的,我如果用其他方法将p1的内容通过asc码转化为十进制数是没问题,只要一用atoi 就死机了,
需要复位处理器才行,难道atoi 不能用于Cortex M3的处理器?挺奇怪的,希望大家能点拨一下了!!!帮忙分析下原因,不用这个函数的话处理起来会比较麻烦! |
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|