首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 单片机 >

AVR的一个奇怪有关问题。变量定义出错,改了上位置又可以了。咋回事

2012-09-03 
AVR的一个奇怪问题。变量定义出错,改了下位置又可以了。怎么回事?变量定义写在引脚定义的后面就出错。写在开

AVR的一个奇怪问题。变量定义出错,改了下位置又可以了。怎么回事?
变量定义写在引脚定义的后面就出错。写在开头可以编译通过。

C/C++ code
void main(void){                unsigned char BT_FLG;        DDRA = 0x00;                                /*方向输入*/        PORTA = 0xFF;                                /*打开上拉*/        DDRB = 0xFF;                                /*方向输出*/        PORTB = 0xFF;                                /*高电平*/        DDRC = 0x00;        PORTC = 0xFF;        DDRD = 0x00;        PORTD = 0xFF;        Uart_Init();                //unsigned char BT_FLG;//写在这个位置就出错

错误信息:
!E E:\AVR\示例程序\0010-UART-LED-B\b_uart.c(57): illegal statement termination
!E E:\AVR\示例程序\0010-UART-LED-B\b_uart.c(57): skipping `unsigned' `char'
!E E:\AVR\示例程序\0010-UART-LED-B\b_uart.c(57): undeclared identifier `BT_FLG'
!W E:\AVR\示例程序\0010-UART-LED-B\b_uart.c(57):[warning] expression with no effect elided
====================================
请问是编译器的原因还是单片机程序里位置有严格要求?
请解释下原因,谢谢。

[解决办法]
C语言明确规定,变量定义要在代码语句前,又不是C++编译器。
[解决办法]
多看书啊!!!
[解决办法]
怎么又发同样的贴?
C语言的语法要求~
[解决办法]
基础知识要扎实。

热点排行