- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章:
Linux下的C语言编程
姓名:
学号:520913080429
专业:信息安全09-04
实验内容:
1.c语言编程
2.vi编辑器
3.gcc编辑器
4.gdb编辑器
5. gdb中运行Linux的shell程序
6.make
7.env系统变量
c语言编程
一般模式
编辑模式
[root@localhost home]# cd /home/
[root@localhost home]# vi hl.c
You have new mail in /var/spool/mail/root
[root@localhost home]# ls
hl.c student vmware-tools-distrib
[root@localhost home]#
在调用C语言编译器的时候,可以通过给出“ -I”编译命令标志来引用保存在下级子目录或者非标准位置的头文件,类似命令如下:
[david@localhost linux]$ gcc -I /usr/openwin/include hello.c
先进入/usr/include子目录,然后在grep命令里给出该名字的几个字母,如下所示:
[david@localhost linux]$ grep KEYSPAN *.h
pci_ids.h:#define PCI_SUBVENDOR_ID_KEYSPAN 0x11a9
pci_ids.h:#define PCI_SUBDEVICE_ID_KEYSPAN_SX2 0x5334
vi编辑器
编辑模式
编辑模式
[E
[Esc]
[:]
[:]
命令模式
命令模式
一般模式
一般模式
q!
q!
wq
wq
保存退出不保存退出
保存退出
不保存退出
[root@localhost ~]# cd /home
[root@localhost home]# vi cl.c
[root@localhost home]#
3.gcc编辑器
gcc的版本可以使用如下gcc –v命令查看:
[david@DAVID david]$ gcc -v
Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.2.2/specs
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/
sr/share/info --enable-shared --enable-threads=posix
--disable-checking --with-
ystem-zlib --enable-__cxa_atexit --host=i386-redhat-linux
Thread model: posix
gcc version 3.2.2(Red Hat Linux 3.2.2-5)
以上显示的就是Redhat linux 9.0里自带的gcc的版本3.2.2。
下面将以一个实例来说明如何使用gcc编译器。例3-1能够帮助大家迅速理解gcc的工作原理,并将其立即运用到实际的项目开发中去。
实例3-1 hello.c????????????????????????????
#include stdio.h
int main (int argc,char **argv) {
printf(Hello Linux\n);
}
[root@localhost home]# ls
cl.c student test.c vmware-tools-distrib
[root@localhost home]# gcc test.c
/usr/lib/gcc/i386-redhat-linux/4.1.1/../../../crt1.o: In function `_start:
(.text+0x18): undefined reference to `main
collect2: ld 返回 1
[root@localhost home]# . /a.out
bash: /a.out: 没有那个文件或目录
[root@localhost home]# gcc test.c -o test.i
/usr/lib/gcc/i386-redhat-linux/4.1.1/../../../crt1.o: In function `_start:
(.text+0x18): undefined reference to `main
collect2: ld 返回 1
[root@localhost home]#
Gcc的警告提示功能
gcc包含完整的出错检查和警告
文档评论(0)