第五章:

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

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包含完整

linux中c语言开发实验报告,Linux下C语言编程实验报告.doc相关推荐

  1. Linux 中的驱动开发的初学者体会

    Linux 中的驱动开发的初学者体会 很多年前,心里就存下这样一个愿望.就是把Linux 的驱动开发搞清楚. 但是一开始上上这样的开发难度天大了,对着一堆的寄存器发愁. 于是就从简单的STM8,PIC ...

  2. linux中感叹号的作用,感叹号在Linux bash中使用技巧

    1. 重复执行上一条指令  !! [root@iZ23t6nzr7dZ python]# ls /usr/local/ aegis bin etc games include lib lib64 li ...

  3. linux中info功能是什么意思,Linux中的info指令

    Info 是什么?info是一种文档格式,也是阅读此格式文档的阅读器:我们常用它来查看Linux命令的info文档.它以主题的形式把几个命令组织在一起,以便于我们阅读:在主题内以node(节点)的形式 ...

  4. Linux下dislocate命令用法,在 Linux 中遨游手册页的海洋 | Linux 中国

    原标题:在 Linux 中遨游手册页的海洋 | Linux 中国 Linux 系统上的手册页可以做的不仅仅是提供特定命令的信息.它们可以帮助你发现你没有意识到的命令. https://linux.cn ...

  5. linux vi 移动光标,linux中vi命令的光标移动操作linux网页制作 -电脑资料

    分享一篇关于linux中vi命令的光标移动操作的文章,有需要的朋友可以参考一下, 全屏幕文本编辑器中, 光标的移动操作无疑是最经常使用的操作了.用户只有熟练地使用移动光标的这些命令,才能迅速准确地到达 ...

  6. linux中打开pdf文件_在Linux中减少PDF文件大小

    linux中打开pdf文件 In our Linux system, If we have a large PDF file, we may want to reduce it's size. We ...

  7. 计算机编程实验,c语言下的计算机软件编程实验

    c语言下的计算机软件编程实验 (5页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.90 积分 C语言下的计算机软件编程实验 摘 要C语言是计算机应用的 ...

  8. Go语言开发(九)、Go语言并发编程

    Go语言开发(九).Go语言并发编程 一.goroutine简介 1.并发与并行简介 并行(parallel):指在同一时刻,有多条指令在多个处理器上同时执行. 并发(concurrency):指在同 ...

  9. java kdj_基于java语言开发的个性化股票分析技术:随机指数(kdj).doc

    基于java语言开发的个性化股票分析技术:随机指数(kdj).doc 还剩 17页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,很抱歉,此页已超出免费预览范围啦! 如果喜欢就下载吧,价低环 ...

  10. Go语言开发(二)、Go语言基础

    Go语言开发(二).Go语言基础 一.Go语言程序结构 Go语言程序基本结构如下: A.包声明 B.引入包 C.函数 D.变量 E.语句 & 表达式 F.注释 package main //包 ...

最新文章

  1. 自己写了个nginx启动脚本,shell
  2. 4.6模拟 宽度优先搜索
  3. joi模块验证日期格式_python datetime模块详解
  4. [C++/CLI编程宝典][5]编译与反汇编
  5. 林斌减持小米股份三天套现3.4亿引关注 小米官方、林斌齐回应...
  6. 帮写python代码_10个工具,帮你写出更好的Python代码
  7. C 获得程序执行时间
  8. 动网论坛 php版,动网即将推出第二代PHP版本论坛系统
  9. jquery-weui的学习与使用
  10. 2022年最新前端面试题
  11. div在html垂直居中,div 垂直居中(css div水平垂直居中六种方法)
  12. 冲突域和广播域的区别
  13. poj 1287 Networking(最小生成树)
  14. UCenter 来自网络
  15. xshell如何将Windows文件上传到linux
  16. 人手一份!八大危险作业操作规程、作业票证(模板)、安全培训齐了~
  17. (株)FAU艾芙优连续五年荣获“韩国消费者评价第一”
  18. 计算机系专用表情包,计算机学起来挺有意思的表情包 - 计算机学起来挺有意思的微信表情包 - 计算机学起来挺有意思的QQ表情包 - 发表情 fabiaoqing.com...
  19. uniapp从企业微信、微信公众号获取地址栏的参数
  20. CTF相关网站收集(自用)

热门文章

  1. c# dotNetCore 使用 Session
  2. 深度学习中的Tensor 数据格式(N,C,H,W)
  3. 高准艾默生质量流量计的故障原因和解决方案
  4. 金蝶星瀚人力云vs北森iTalentX 5.0,HR SaaS下半场如何开启?
  5. [WallProxy] WallProxy
  6. 跨域下的iframe自适应高度
  7. 如何制作html电子杂志,使用iebook怎么制作电子杂志?iebook制作电子杂志图文教程...
  8. java struts2 漏洞_struts2漏洞原理及解决办法
  9. vue中60余种工具类
  10. 【QMK键盘】简单的QMK固件键盘环境搭建