摘要:
extern关键字 extern关键字有两种用法: 1、用于声明一个全局变量或函数的外部链接性 2、extern "C" 是一个语言特性,用于告诉编译器按照 C 语言的方式对待指定的代码块,以确保与 C 语言兼容 用法一:用于声明一个全局变量或函数的外部链接性 // file1.c #include 阅读全文
摘要:
设计库的目的1)程序更加简洁,不需要维护太多的源文件 2)保护三方厂商的知识产权 gcc常用指令复习一波gcc的常用指令: -E :仅执行预处理(不要编译、汇编或链接)。 -S :只编译(不汇编或链接)。 -c :编译和汇编,但不链接。 -o <file> :指定输出文件。 -pie :创建一个动态 阅读全文
摘要:
GCC编译器提供了多种优化选项,可以帮助改善代码的性能和效率,但当优化等级设置不对时,会导致coredump问题,本文对个人理解和网络上对GCC总结比较完善的文档做个记录备份,侵权联删 GCC优化出现的问题个人分析思路: 1、通过addr2line、nm等方法分析出现堆栈对应的代码段,分析代码逻辑, 阅读全文
摘要:
提起linux内核链表,首先一定得弄清楚的两个linux内核常用宏offsetof && container_of offsetof宏 #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) 宏解析: 1、size_t在系统中一般 阅读全文
摘要:
c/c++中的一个常见,驱动调试中相当常用的一个关键字 总结一下volatile关键字的作用: 1、多线程中防止编译器优化 #include <stdio.h> #include <stdlib.h> #include <pthread.h> volatile int flag = 0; // 定义 阅读全文
摘要:
团队合作开发中,git作为一个必不可少的工具,能够提高团队的开发效率、代码的质量和可维护性 --20240225 分支推送: 要将本地的 master 分支推送到远程仓库的 master 分支 git push origin master 这条命令会将本地的 master 分支的代码推送到远程仓库( 阅读全文
摘要:
c语言命令行,常用到getopt_long和getopt两个函数,在此做个记录 getopt() getopt函数是一个用于解析命令行参数的C标准库函数,通常与头文件一起使用 int getopt(int argc, char * const argv[], const char *optstrin 阅读全文