![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++基础
Ace-huang
饭可以一日不吃,觉可以一日不睡,代码不可以一日不敲。
展开
-
静态库与动态库混合链接
准备 在linux下,终端完成c/c++的编译运行,如果使用到静态库与动态库,那么如何链接?这里以一个例子来完成讲述。假如当前位于test目录,且有a.h、a.c、b.h、 b.c,以及调用a、b中方法的main.c。 每个文件的内容如下 //a.c文件内容如下 #include<stdio.h> void a(){ printf("The first file a\n"); } ...原创 2019-12-02 21:44:22 · 2060 阅读 · 1 评论 -
gdb命令的使用
gdb的作用: 启动程序,指定任意可以影响程序的参数 让程序在指定条件下暂停 测试程序停止时发生事情 改变程序内部变量,改正错误继续运行 gdb的使用: gdb + 可执行文件 gdb + 可执行文件 + core gdb + 进程名 + 进程ID 调试命令: break 设置断点: break function 设定到指定的函数 break linenum 设定到行号 ...原创 2019-11-28 11:10:48 · 185 阅读 · 2 评论 -
gcc/g++参数以及使用
c文件的执行 c源文件到可执行一共需要经历4个阶段。使用gcc编译程序要经过预处理、编译、汇编、链接。 预处理 编译器主要加载头文件、条件编译、宏替换,使用: gcc -E main.c > main.i, 编译 编译过程中,编译器主要做语法检查和词法分析,没有问题之后将会翻译成汇编代码或者中间代码: gcc -S main.i -o main.s 汇编 汇编阶段将main....原创 2019-11-28 11:09:05 · 315 阅读 · 0 评论