![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C
文章平均质量分 64
LinkedInfo
这个作者很懒,什么都没留下…
展开
-
ARM编译器对C语言的扩展
1.__irq使用__irq定义中断处理函数,当中断发生时,所有需要被保护的寄存器,编译器都会自动保存。同时,在中断处理完成后,把lr-4的值装载到PC,把SPSR的值复制到CPSR来实现返回。所以用__irq,不需要考虑现场的保护。__irq void IRQHandler(void){..... }两个限制:1.函数不能有参数和返回值2.不能用作可重入的中断处理函数转载 2012-02-28 13:37:21 · 556 阅读 · 0 评论 -
C语言-预处理器
如果想在下一行延续指令,则在当前行末尾使用\字符 带参数的宏#define MAX(x,y) ((x)>(y)?(x):(y))#define IS_EVEN(n) ((n)%2==0)则i=MAX(j+k,m-n);if(IS_EVEN(i)) i++;将被替换为i=((j+k)>(m-n)?(j+k):(m-n));i转载 2012-03-04 20:12:16 · 287 阅读 · 0 评论 -
GCC常用编译选项
GCC编译选项解析 GCC是Linux下基于命令行的C语言编译器,其基本的使用语法如下。 gcc [option |filename]… 对于编译C++的源程序,其基本语法如下: g++ [option |filename]… 其中option为GCC使用时的选项,而filename为需要GCC做编译的处理的的文件名。就GCC来说,其本身转载 2012-03-12 18:17:40 · 279 阅读 · 0 评论