欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    Linux下的C语言编程实验报告.docx

    • 资源ID:3064939       资源大小:311.66KB        全文页数:13页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Linux下的C语言编程实验报告.docx

    1、Linux下的C语言编程实验报告第五章:Linux下的C语言编程姓名:学号:520913080429专业:信息安全09-04实验内容:1.c语言编程2.vi编辑器3.gcc编辑器4.gdb编辑器5. gdb中运行Linux的shell程序6.make7.env系统变量1.c语言编程一般模式编辑模式rootlocalhost home# cd /home/rootlocalhost home# vi hl.cYou have new mail in /var/spool/mail/rootrootlocalhost home# lshl.c student vmware-tools-distri

    2、brootlocalhost home#在调用C语言编译器的时候,可以通过给出“ -I”编译命令标志来引用保存在下级子目录或者非标准位置的头文件,类似命令如下:davidlocalhost linux$ gcc -I /usr/openwin/include hello.c先进入/usr/include子目录,然后在grep命令里给出该名字的几个字母,如下所示:davidlocalhost linux$ grep KEYSPAN *.hpci_ids.h:#define PCI_SUBVENDOR_ID_KEYSPAN 0x11a9pci_ids.h:#define PCI_SUBDEVICE

    3、_ID_KEYSPAN_SX2 0x53342.vi编辑器rootlocalhost # cd /homerootlocalhost home# vi cl.crootlocalhost home# 3.gcc编辑器gcc的版本可以使用如下gcc v命令查看:davidDAVID david$ gcc -vReading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.2.2/specsConfigured with: ./configure -prefix=/usr -mandir=/usr/share/man -infodir=/sr/sha

    4、re/info -enable-shared -enable-threads=posix -disable-checking -with-ystem-zlib -enable-_cxa_atexit -host=i386-redhat-linuxThread model: posixgcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)以上显示的就是Redhat linux 9.0里自带的gcc的版本3.2.2。下面将以一个实例来说明如何使用gcc编译器。例3-1能够帮助大家迅速理解gcc的工作原理,并将其立即运用到实际的项目开发中去。实例3-1

    5、hello.c#include int main (int argc,char *argv) printf(Hello Linuxn); rootlocalhost home# lscl.c student test.c vmware-tools-distribrootlocalhost home# gcc test.c/usr/lib/gcc/i386-redhat-linux/4.1.1/./././crt1.o: In function _start:(.text+0x18): undefined reference to maincollect2: ld 返回 1rootlocalho

    6、st home# . /a.outbash: /a.out: 没有那个文件或目录rootlocalhost 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 maincollect2: ld 返回 1rootlocalhost home#Gcc的警告提示功能 gcc包含完整的出错检查和警告提示功能,它们可以帮助Linux程序员尽快找到错误代码,从而写出更加专业和优美的代码。先来读读

    7、例3-2所示的程序,这段代码写得很糟糕,仔细检查一下不难挑出如下毛病:main函数的返回值被声明为void,但实际上应该是int; 使用了GNU语法扩展,即使用long long来声明64位整数,仍不符合ANSI/ISO C语言标准; main函数在终止前没有调用return语句。 实例3-2 bad.c#include void main(void) long long int var = 1; printf(It is not standard C code!n);4.gdb编辑器test.c#include int func(int n) int sum=0,i; for(i=0; in

    8、; i+) sum+=i; return sum; main() int i; long result = 0; for(i=1; i=100; i+) result += i; printf(result1-100 = %d n, result ); printf(result1-250 = %d n, func(250) ); 5. shell程序 在gdb环境中,可以执行Linux的shell命令:shell 调用Linux的shell来执行,环境变量SHELL中定义的Linux的shell将会用来执行。如果SHELL没有定义,那就使用Linux的标准shell:/bin/sh(在Win

    9、dows中使用C或cmd.exe)。还有一个gdb命令是make:make 可以在gdb中执行make命令来重新build自己的程序。这个命令等价于shell make 。 在gdb中运行程序当以gdb 方式启动gdb后,gdb会在PATH路径和当前目录中搜索的源文件。如要确认gdb是否读到源文件,可使用l或list命令,看看gdb是否能列出源代码。在gdb中,运行程序使用r或是run命令。程序的运行,有可能需要设置下面四方面的事。程序运行参数set args 可指定运行时参数。如:set args 10 20 30 40 50show args 命令可以查看设置好的运行参数。运行环境path

    10、 可设定程序的运行路径。show paths 查看程序的运行路径。set environment varname =value 设置环境变量。如:set env USER=hchenshow environment varname 查看环境变量。工作目录cd 相当于shell的cd命令。pwd 显示当前的所在目录。程序的输入输出info terminal 显示程序用到的终端的模式。使用重定向控制程序输出。如:run outfiletty命令可以指写输入输出的终端设备。如:tty /dev/ttybshell命令解析器定义别名将lm定义为ls -al6.makeMake冒烟命令make是一个解释

    11、makefile文件中的指令的命令工具Make file 写法只要makefile文件写得足够好,所有的这一切,只用一个make命令就可以完成,make命令会自动智能地根据当前文件的修改情况来确定哪些文件需要重新编译,从而自动编译所需要的文件并连接目标程序。在讲述这个makefile文件之前,还是先来粗略地看一看下面的代码 Main.o :main.c add.h Gcc c main.c o main.o在makefile文件中使用变量在上面的例子中,先通过实例5-2来看看edit的规则。实例5-2edit : main.o kbd.o command.o display.o insert.

    12、o search.o files.o utils.o gcc -o edit main.o kbd.o command.o display.o insert.o search.o files.o utils.o可以看到,.o文件的字符串被重复了两次。如果这个工程需要加入一个新的.o文件,需要在两个位置插入(实际是个位置,还有一个位置在clean中)。当然,这个makefile文件并不复杂,所以在两个位置加就可以了。但如果makefile文件变得复杂,就要在第3个位置插入,该位置容易被忘掉,从而会导致编译失败。所以,为了makefile文件的易维护,在makefile文件中可以使用变量。make

    13、file文件的变量也就是一个字符串,可以理解成C语言中的宏。比如,声明一个变量objects,在makefile文件一开始可以这样定义定义变量rootlocalhost home# name=zhangshanrootlocalhost home# name1=zhang sanrootlocalhost home# name2=zhang sanrootlocalhost home# echo $namezhangshanrootlocalhost home# echo $name1zhang sanrootlocalhost home# echo $name2zhang sanrootlo

    14、calhost home#7.env系统变量管理模式1显示passwd中的第一列 | 命令rootlocalhost home# cat /etc/passwd |cut -d : -f1rootbindaemonadmlpsyncshutdownhaltmailnewsuucpoperatorgamesgopherftpnobodyrpmdbusavahimailnullsmmspnscdvcsahaldaemonrpcrpcusernfsnobodysshdpcapntpgdmapachedistcachepostgresmysqldovecotwebalizersquidxfsnamedsabayonpostfi


    注意事项

    本文(Linux下的C语言编程实验报告.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开