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 · 1893 阅读 · 1 评论 -
gdb命令的使用
gdb的作用:启动程序,指定任意可以影响程序的参数 让程序在指定条件下暂停 测试程序停止时发生事情 改变程序内部变量,改正错误继续运行gdb的使用:gdb + 可执行文件 gdb + 可执行文件 + core gdb + 进程名 + 进程ID调试命令:break 设置断点: break function 设定到指定的函数 break linenum 设定到行号 ...原创 2019-11-28 11:10:48 · 171 阅读 · 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 · 300 阅读 · 0 评论