gcc编译中注意的问题

例如在源文件中如何我们的头文件写成#include "head.c",表示在当前路径查找头文件,如果头文件的路径不在当前路径,我们可以通过一下方式指定头文件的路径。

gcc hello.c -I ./头文件路径  -o  可执行文件

在我们的程序中往往都会有许多调试程序,这些调试程序在完成代码后都是要去掉的,所以为了优化代码和调试代码的方便,在程序中我们是通过#ifdef  .... #endif来定义调试代码,如果定义了宏那么 就执行这个段的调试代码。

我们有两种方式可以定义调试宏,第一种是在一个头文件中定义全局的调试宏,如果源文件需要进行调试,那么就包含这个头文件;第二种方式就是在编译的时候指定宏。

gcc hello.c -o 可执行文件 -D 调试宏

代码的优化

gcc hello.c -Oi             (i =  1,2,3)由三个优化等级,例如以下代码

int a = 10;
int b = a;
int c = d;
int e = f;

通过-O3优化之后代码变成e = 10;

参数-Wall:在程序编译的过程中显示警告

例如未使用的变量;

参数 -g ,

程序可调试,代码在调试的时候会加入调试信息,可执行文件的大小会增加。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值