- 博客(9)
- 收藏
- 关注
原创 cMake入门
variable:变量名value:变量值,可以为空。默认都是字符型,为空则是一个空字符串。多个值使用分号(;)隔开。[] 表示当前变量可选同样使用setCMAKE_CXX_STANDARD:指定c++标准。EXECUTABLE_OUTPUT_PATH:指定可执行文件输出路径。.....例如:# 使用宏指定可执行文件输出路径# 定义的宏是全局的,会影响所有后续添加的目标(如 add_executable 或 add_library)。add_definitions(-D宏名称=宏值)
2025-11-09 21:05:06
476
原创 C/C++从源码到可执行文件
做“文本替换”(1)将 #include 内容拷贝进去(2)删除注释(3)处理条件编译(#ifdef)(4)宏展开(#define)指令:-E 预处理指令,-o 指定输出文件。
2025-09-04 11:27:51
361
原创 递归函数--理解内部递归逻辑
递归是一种函数调用自身的技术,其核心在于通过不断缩小问题规模来解决问题。一个有效的递归函数必须包含两个关键部分:递归终止条件和递归调用。递归终止条件用于防止无限递归,避免栈溢出错误;而递归调用则通过函数自身逐步逼近终止条件。以计算阶乘为例,递归函数会不断调用自身,直到达到终止条件后开始回溯,最终得到结果。递归在数学计算(如阶乘、斐波那契数列)、算法设计(如树和图的遍历)等领域有广泛应用。通过合理设计递归函数,可以高效解决许多复杂问题。
2025-05-18 10:47:58
276
原创 联合体与结构体(union与struct)
结构体是一种用户自定义的数据类型,可以将多个不同类型的数据组合在一起。每个成员在内存中是连续存储的,并且每个成员都有自己的内存空间。
2025-05-03 15:12:38
553
原创 静态库与动态库
当动态库更新时,只要保证库的接口不变,使用该库的程序不需要重新编译链接,直接替换动态库文件即可,方便了程序的更新和维护。链接时机不同:静态库是在程序编译时被链接到目标代码中的,而动态库是在程序运行时才被加载。:程序运行时不需要额外加载库文件,因为库的内容已经整合到了可执行文件中,所以程序的运行速度相对更快。静态库:静态库是一种目标文件的集合,它是在程序编译时被链接到目标代码中的。:程序运行时需要找到对应的动态库文件,如果动态库文件缺失或版本不匹配,可能会导致程序无法正常运行。
2025-05-03 12:45:14
2825
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅