天嵌 ARM开发社区

 找回密码
 注册
查看: 2539|回复: 2

流水灯中碰到的问题

[复制链接]
xiehaifeihai 发表于 2010-7-18 17:56:48 | 显示全部楼层 |阅读模式
再做裸奔1的时候,流水灯中,在代码:
while(1)
        {
           Led_Display(1);
           Delay(1000);

              U8 idx;
               
                Uart_Printf("\nPlease select function : \n");       
                for(i=0; CmdTip.fun!=0; i++)
                        Uart_Printf("%d : %s\n", i, CmdTip.tip);
                idx = Uart_GetIntNum_GJ() ;       
                if(idx<i)
                {
                        (*CmdTip[idx].fun)();
                        Delay(20);
                        Uart_Init( 0,115200 );
                }       
       
        }                 
添加了红色字体部分,并且下面的代码没有注释掉,这样的编译为什么会报错呢?报错信息如下:
Error   : (Serious) C2304E: <command> expected but found 'unsigned'
Main.c line 245   

Error   : C2456E: undeclared name, inventing 'extern int idx'
Main.c line 250   

F:\TQ2440_Test\src\Main.c: 0 warnings, 1 error, 1 serious error

请高手大哥给小弟解释解释啊,谢谢啦
fengyu 发表于 2010-7-27 22:18:59 | 显示全部楼层
是不是其中的unsigned 变量 放错了位置  我遇到过第一条错误
guguibin1988 发表于 2010-8-4 11:25:55 | 显示全部楼层
看到楼上说的,我特地去验证了一下,楼上正解。是你红色的代码放在了U8 idx前面了。U8实现的是idx变量的声明,一般变量的声明最好是放在开头,尤其针对于ARM的c语言又比较严格的要求。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )

GMT+8, 2024-6-10 19:24 , Processed in 1.031250 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表