当我按下“A”时,我有一个菜单,我执行以下代码来解析用逗号分隔的数字。我第一次按“A”结果是 100% 准确的。但是我第二次按菜单中的“A”重复相同的代码,我得到了奇怪的结果。我正在使用带有 PIC18 的 MPLAB C18 编译器
我正在使用带有 PIC18 的 MPLAB C18 编译器
第一次输出
0002
0100
0200
0100
秒+次输出
0002
代码
char somestr[] ="2,0100,0200,0100";
char *pt;
int a;
pt = strtokpgmram (somestr,",");
while (pt != NULL)
{
a = atoi(pt);
printf("%d\n", a);
pt = strtokpgmram (NULL, ",");
}
你如何解决它,以便每次我从菜单中按“A”时,我都会得到与第一次输出相同的结果?
谢谢!