赞
踩
关于gcc编译器,它的参数问题,我们先来看一个.c文件的处理过程,每一个过程都可以单独处理,生成你想要的文件
下面说一下gcc的常用参数:
还可以让编译器产生警告信息:
gcc -pedantic hello.c 这个能产生一些警告信息
有些代码直接gcc可能看起来是没有问题,也可以运行成功,但是写的确实不符合规范,比如:
- #include <stdio.h>
- void main(void)
- {
- long long int var = 2012;
- printf("%d\n",var);
- }
我们看一下加这个参数之后的情况:
gcc -Wall hello.c 这个能产生更多警告信息
gcc -Werror 必须完成错误才能编译
优化问题:
gcc -On 其中n可以取值1,2,3,数字越大,优化级别越高
上面就是很明显时间加快了。
下面说一下gdb调试器:
关于程序调试可以从如下入手:
下面就是说一下条件编译:
然后话不多说看代码:
- #include <stdio.h>
- #include <stdlib.h>
- #define BASIC_DEBUG 1
- #define EXTRA_DEBUG 2
- #define SUPER_DEBUG 4
-
-
- int main()
- {
- #if (DEBUG & BASIC_DEBUG)
- printf("。。。\n");
- #endif
-
- #if (DEBUG & EXTRA_DEBUG)
- printf("******\n");
- #endif
-
- #if (DEBUG & SUPER_DEBUG)
- printf("//\n");
- #endif
- return 0;
- }

上面就是一个典型的代码调试过程,满足什么条件就可以执行那个位置的代码,比如我们如下命令:
上面为什么没有执行*号的打印,因为*号这个的条件判断相当于是5 & 2=> 101 & 010 => 000,
所以,程序这一步进不来,我们通过这样控制,就可以完成更复杂的调试应用。
下面在来说一下,c语言预处理器给我们预定义了一些宏,如下,我们可以随时拿过来用就行:
下面说说在linux操作系统中常用的gdb调试工具
基本过程:
然后我们使用gdb里面的命令工具就可以对可执行程序进行调试了。
下面说一下gdb常用的命令:
下面在说一下display与commands两个命令:
下面说一下查询,删除,暂停断点与信息展示相关操作:
这个gdb调试器还是要多实战才可以,命令精仅供参考使用。
下面说一下vim编辑器:
在说vim 编辑器之前,我先来说说vim的几种模式,因为你毕竟以后要在几种模式之间来回切换。
这个是在linux终端上常用的编辑器,有多牛逼就不说了。不知道的命令基本上就是查手册就完了,记住一些常用的就行,这里我用的是《鸟哥linux私房菜》,说一些常用的命令截图:
常用移动光标方法:
查找与替换常用的方法:
粘贴、删除赋值常用方法:
下面说一下vim分屏操作:下面是在命令行模式中执行分屏操作
sp 当前文件水平分屏
vsp:垂直分屏
ctrl-w-w 这个就是分屏之后在多个窗口切换光标
如果想在文件打开之前分屏:vim -o 文件1 文件2(水平)
vim -O 文件1 文件2(垂直)
关于分屏文件的退出:wq与all配合使用
下面说一下vim的配置文件vimrc:
在这个配置文件中,我们修改文件打开之后的空格缩进,与行号展示一些信息:
比如:
说一下配置方向:
大致据这样。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。