MSP430 c语言编程问题
#defineDEFC(name,address)__no_initvolatileunsignedcharname@address;当中这个volatile在这表示啥,...
#define DEFC(name, address) __no_init volatile unsigned char name @ address;
当中这个volatile 在这表示啥,name @ address,中间这个@有啥作用,这一整句的意思是啥? 展开
当中这个volatile 在这表示啥,name @ address,中间这个@有啥作用,这一整句的意思是啥? 展开
展开全部
volatile 是C语言的关键字,简单的说,是用来阻止编译优化的。这个可以查百度百科,说的很详细。
@ 是IAR的语法,不是C语言的标准语法。简单的说,就是指明变量的地址是在什么位置。
宏定义的作用主要是文字替换,主要还是看展开之后的内容。
比如:
#define IFG1_ (0x0002u)
DEFC( IFG1 ,IFG1_)
展开之后 的内容
__no_init volatile unsigned char IFG1 @ 0x0002u
这个意思就很比较好理解了。
@ 是IAR的语法,不是C语言的标准语法。简单的说,就是指明变量的地址是在什么位置。
宏定义的作用主要是文字替换,主要还是看展开之后的内容。
比如:
#define IFG1_ (0x0002u)
DEFC( IFG1 ,IFG1_)
展开之后 的内容
__no_init volatile unsigned char IFG1 @ 0x0002u
这个意思就很比较好理解了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询