Linux程序的编译和调试

一、gcc编译器

1、gcc(GNU Compiler)是GNU推出的多平台编译器,可将C、C++源程序编译连接成可执行文件,支持以下后缀:

.c         c语言源代码

.h         程序所包含的头文件     

.i          已经预处理过的C源代码文件

.s         汇编语言源代码文件

.o         编译后的目标文件


2、gcc –o test test.c     (test.c为文件名,test为自定义的可执行文件名)

-o    输出可执行文件

-c    只要求编译器输出目标代码(.o文件),而不必输出可执行文件

-g    用于调试

 ./test  查看输出结果(test为可执行文件文件名)


输入vi test.c 查看test.c

gcc后,输入ls,发现文件夹里多了刚刚自定义的可执行文件test

./test  (./相当于双击)输出运行结果

gcc指令后可加 -Wall ,此指令用于将代码中语法不规范部分以警告的形式展现出来。

如果gcc指令后不加 -o (不自定义生成的可执行文件名),则默认生成 a.out 


二、程序调试

利用__FILE__,__LINE__,__FUNCTION__实现代码跟踪调试。

FILE是文件名,FUNCTION为函数名, LINE为行号。

#include <stdio.h>

main(int argc,char **argv) {

     printf("%s,%s,%d\n",__FILE__,__FUNCTION__,__LINE__);

     return 0;

}

日志中经常加入此语句,方便日后调试查找关键的代码。

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值