|
马老师,您好!请教一个问题?
由于我原来一直是用ICC写程序的,刚刚转成用GCC写程序,对一些语法不是很明白。(个人功底太差了)
在引用一个外部全局变量的时候,怎么写volatile和extern的顺序呢?
是应该写volatile extern uint8_t main_Flage1,还是extern volatile uint8_t main_Flage1?
我仿真过了,两种写法都不会影响结果,但还是不太明白。
我自己觉得应该是extern volatile uint8_t main_Flage1才对,
表示是一个外部引用的变量,而且这个变量应该是易变的。
谢谢,请您指导!
main.c
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/wdt.h>
#include "main.h"
#include "initial.h"
#include "timerdeal.h"
#include "keyscan.h"
volatile uint8_t main_Flage1;
uint8_t m_LedTimer;
ISR( TIMER2_COMPA_vect )
{
main_Flage1 = 1;
}
-------------------------------
keyscan.c
#include <avr/io.h>
#include "main.h"
#include "keyscan.h"
volatile extern uint8_t main_Flage1;
extern uint8_t timerdeal_T_10ms; |
阿莫论坛20周年了!感谢大家的支持与爱护!!
曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……
|