Chinaunix首页 | 论坛 | 博客
  • 博客访问: 287378
  • 博文数量: 41
  • 博客积分: 2630
  • 博客等级: 少校
  • 技术积分: 702
  • 用 户 组: 普通用户
  • 注册时间: 2007-09-30 15:56
文章分类

全部博文(41)

文章存档

2012年(2)

2011年(2)

2010年(3)

2009年(26)

2008年(8)

我的朋友

分类: LINUX

2008-05-01 19:52:58

1.查看默认的gcc版本

#gcc –v
gcc version 3.3.2 20030222

2.编写一个简单的程序进行练习

#vi hello.c

#include<stdio.h>
int main(int argc, char* argv[])
{

     printf(“Hello,%s.\n”,argv[1]);
     return 0;
}

# gcc –o hello –g hello.c
# ./hello “daxi”
Hello,daxi.
 
3.gcc常用命令选项
-c                只编译并生成目标文件。
-o  FILE          生成制定名称的可执行文件。
-I目录             头文件先到指定目录寻找
-l库名             指定编译的时候使用的库
-L目录            指定库的路径
-Wall             生成所有警告信息。
-g                生成调试信息。
4.使用gdb

#gdb hello
(gdb)b main
(gdb)r
(gdb)n
(gdb)p argv[0]
 $1 = 0xbffffc67 “/root/hello”
(gdb)q

 
4.gdb常用命令选项

gdb progname    Start GDB is with an executable program.
r               Start your program under GDB.
b   LINENUM     Set a breakpoint at line LINENUM in current source file.
b   FUNCTION      Set a breakpoint at entry to function FUNCTION.
s   [COUNT]      Continue running your program until control reaches a different source line  
n   [COUNT]      Continue to the next source line in current stack frame.
p   [EXP]       By default value of EXP is printed in a format appropriate to its data type.

s/n类似VS2005的F11/F10

参考:
阅读(1855) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~