![](https://img-blog.csdnimg.cn/20210804100418491.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Linux C
并发和竞态、中断上下文、进程与线程、文件IO
进击的蜗牛Eric
激励自己,方便他人。
展开
-
inline内联类型函数(inline、__always_inline、noinline)
目录1. 定义2. 接口3. 优缺点4. inline、__always_inline、noline的区别5. 与宏的区别6. 验证inline的方法C程序编译为汇编1. 定义TODO2. 接口#define __inline__ inline#define __inline inline#define __always_inline inline __attribute__((always_inline))#define noinline __attribute__((noinline))原创 2020-12-07 20:08:03 · 3079 阅读 · 1 评论 -
C语言编译过程(预处理、编译、汇编、链接)
目录命令C语言源程序预处理(Preprocessing)编译(Compilation)汇编(Assembly)链接(Linking)命令$ gcc -E hello.c -o hello.i$ gcc -S hello.i -o hello.s$ gcc -c hello.s -o hello.o$ gcc hello.o -o hello$$ ./hellohello world!pre-compiled here!static __always_inline void func原创 2020-12-06 21:58:53 · 332 阅读 · 0 评论 -
Bin文件转换为十六进制(C语言)
目录目的Code代码说明代码实例目的在Coding过程中经常需要把某文件load到IC的RAM中。此时需要把文件转换为16进制数,利用I2C、SPI等接口进行load操作。Code代码说明由于在Coding过程中,文件转换成的十六进制数常常以头文件的形式被调用,所以直接将代码输出样式写成头文件的形式。功能:将文件转换为十六进制数用法:如果定义了FILENAME,则直接转换宏定义的文件$gcc bin_to_hex.c -o bin_to_hex.o$./bin_to_hex.o &原创 2020-12-03 21:48:57 · 3212 阅读 · 1 评论