Linux程序设计笔记 第1章linux程序设计

字体==楷体linux

使用的linux发行版中gentoo发行版,使用以前使用过debian,mini,unbuntu后来看到一篇介绍linux发行版的文章http://tieba.baidu.com/p/1180067796  和决定使用linux同样使用gentoo,在10天后成功的安装失败,以后回到学校放暑假回到家中从新安装用了3天成功,期间在贴吧和邮件组提出无数个问题,感谢帮助个人人,为了补充linux知识,在handsoul大牛的引导下开始学习《linux程序设计》,我也是一个菜鸟目前只有C的基础,但愿3年后或更久我也能成为黑阔大牛shell

 1.2.1 linux程序

linux其实只是指一个linux内核,如今的linux系统应该叫作gnu/linux操做系统。
gnu开源操做系统计划,gnu内核gnu hurd,一直没有开发出1.0的官方正式版。
这个庞大的微内核计划还在开发中。 http://www.gnu.org/software/hurd/

linux应用程序表现为两种特殊类型的文件:可执行文件和脚本文件。windows

可执行文件是计算机可直接运行的文件,至关于windows的.exe文件。网络

脚本文件是一组指令的集合,这些指令将由另外一个程序(即)解释器来执行,它们至关于windows的bat文件,cmd文件或解释执行的BASIC程序。函数

linux并不要求它们有特殊的文件名或扩展名,文件系统属性用来指明一个文件是否为可执行的程序。工具

1.2.3  C语言编译器

  hello程序极可能在你的本地目录学习

  若是PATH变量包含指向你的本地目录的条目,shell就找不到hello程序。字体

  若是PATH变量中包含的其中一个目录有另外一个hello程序,shell就会执行那个程序。若是PATH中这样的目录出如今你的   本地目录以前,就会发生这种状况。spa

  为了不这种潜在问题,能够在程序名前加./,它特别指shell去执行当前目录下,给定的名称的程序。符号.表明当前目     录。操作系统

  若是没用 -o name 告诉编译器可执行程序的名字。编译器就会把程序放在名为a.out的文件中。(a.out即汇编输出)

1.2.4 开发系统导引

一、应用程序

   系统为正常运行(感受比原文的系统使用好)提供的程序包括用于程序开发的工具均可在目录 /usr/bin

   某个特定的主机或本地网络添加的程序一般可在目录 /usr/local/bin或/opt中

   系统管理员喜欢用/opt和/usr/local目录

   这样的好处是在须要升级操做系统时就能够看出来,由于只有/opt和/usr/local 里的内容须要保存

   最好系统级的应用程序,将它放在/usr/local目录中来运行访问。

   开发和我的用的应用程序,最好在本地目录中使用一个文件夹来存放它。

    GCC在/usr/bin或/usr/local/bin    但它会从其余位置运行的应用程序,其余位置在/usr/lib/gcc

    我使用的gentoo AMD64内核版本3.3.8  当前最新版本的稳定内核,在/usr/bin中找到了gcc,/usr/local/bin下空的没有任何东西,/usr/lib/gcc这个位置有的 

二、头文件

     对C语言来讲头文件位置几乎老是位于/usr/include   //在/usr/include中找到stido.h,printf.h
     依赖于特定linux版本的头文件一般可在目录/usr/include/sys和/usr/include/linux
      
      能够使用-I标志来包含保存在子目录或非标准位置的头文件 //-I为大写i

       $gcc -I/usr/openwin/include fred.c

       它指示编译器不只在标准位置也在指定的目录中查找程序fred.c中包含的头文件

       用grep命令来搜索特定定义和函数原型的头文件是很方便的,假设想知道用于从程序中返回退出状态的#define定义的名字,你只需切换到/usr/include目录下,而后

        # grep EXIT_ *.h

        ............

        stdlib.h:#define EXIT_FAILURE 1 /* Failing exit status.  */

        stdlib.h:#define EXIT_SUCCESS 0 /* Successful exit status.  */

上面的grep命令在当前目录下的全部以.h结尾的文件中搜索字符串EXIT_。在本例中,它在stdlib.h文件中找到你须要的定义。

相关文章
相关标签/搜索