Linux编程-3-C、C++和Fortran编程.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Linux编程-3-C、C和Fortran编程

Linux操作系统与程序设计 提 纲 Linux操作系统与程序设计 Linux操作系统概述、安装与配置 Linux实用Shell命令与Shell编程初步 Vi编辑器 Linux系统下的C/C++、Fortran编程与相互调用 自动编译工具:Makefile配置与make命令 库文件建立与调用 MPI与OpenMP并行程序设计 编译器(C/C++,Fortran,Java,Python等) C与C++、Fortran程序设计、编译方法 Fortran90之动态数组 C与Fortran程序的相互调用 主要的编译器 C/C++编译器(如cc, gcc,g++,icc等) Fortran编译器(如f77,g77,f90,ifort) Java编译器 ? 编译时,编译器需要的是语法的正确,函数与变量的声明正确。对于后者,通常是你需要告诉编译器头文件的所在位置(头文件中一般只是声明,而定义应该放在C/C++文件中)。只要所有的语法正确,编译器就可以编译出目标文件。一般来说,每个源文件都应该对应于一个目标文件(.O文件或是.OBJ文件)。 ? 链接时,主要是链接函数和全局变量。由中间目标文件(.O文件或是.OBJ文件)链接生成应用程序(可执行码)。链接器并不管函数所在的源文件,只管函数的中间目标文件(Object File)。 ? 在大多数时候,由于源文件太多,编译生成的中间目标文件太多,而在链接时需要明显地指出中间目标文件名,这对于编译很不方便,所以,我们要给中间目标文件打个包,在Windows下这种包叫“库文件”(Library File),也就是.lib 文件,在Linux/UNIX下,是Archive File,也就是.a 文件。 参考资料:C库函数.pdf 小练习 1)先用vi编辑器编写: 头文件say.h 子程序say_helloc.c和say_bye.c 主程序say.c 头文件say.h #include stdio.h #include stdlib.h void say_hello(void); void say_bye(void); 子程序1:say_hello.c #include say.h void say_hello(void) { printf(Hello, every one !\n); } 子程序2:say_bye.c #include say.h void say_bye(void) { printf(Bye bye !\n); } 主程序say.c #include say.h int main(void) { int i; for(i=0;i10;i++) say_hello(); for(i=0;i10;i++) say_bye(); return 0; } 编译简介 在Linux系统中,可执行文件没有统一的后缀,系统从文件的属性来区分可执行文件和不可执行文件 大部分编译器通过后缀来区别输入文件的类别,下面来介绍常用的一些后缀 .c:C语言源代码文件 .f:Fortran 77语言源代码文件 .o:编译后的目标文件 .a:由目标文件构成的档案库文件 .C、.cc、.cxx:C++源代码文件 .f90:Fortran 90语言源代码文件 .h:程序所包含的头文件 基本的用法 cc/f77/f90 [options] [filenames] 编译器名 编译参数 编译文件 其中options就是编译器所需要的参数,filenames给出相关的文件名称 常用编译参数 -c:只编译,不连接成为可执行文件,编译器只是由输入的.c/.f等源代码文件生成.o为后缀的目标文件,通常用于编译不包含主程序的子程序文件。 -o output_filename:确定输出文件的名称为output_filename,同时这个名称不能和源文件同名。如果不给出这个选项,就给出预设的可执行文件a.out -g:产生符号调试工具所必要的符号资讯,要想对源代码进行调试,我们就必须加入这个选项。 -O:对程序进行优化编译、连接,采用这个选项,整个源代码会在编译、连接过程中进行优化处理,这样产生的可执行文件的执行效率可以提高,但是,编译、连接的速度就相应地要慢一些。 -O2、-O3、-O4:比-O更好的优化编译、连接,当然整个编译、连接过程会更慢。(具体和编译器相关) 常用编译参数 -Idirname:将dirname所指出的目录加入到程序头文件目录列表中,是在预编译过程中使用的参数。C程序中的头文件包含两种情况: A)#include stdio.h B)#include “myinc.h” 其中,A

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档