阅 读 文 章

[转贴]cc的基本用法

[来源:网上转载 (http://www.chinaunix.net) | 作者:网友(sdccf) | 时间:2007-05-27 | 浏览:人次 ]


  在UNIX系统中,实现C源程序到可执行文件的这一转换过程的工具是cc。在大多数系统中cc实际上是一个shell命令文件。有些系统中的C编译程序可能并不叫cc而是其它的一个什么名称,如Sun工作站上常用的gcc等等。但这些都无关紧要。大多数系统中C编译命令的用法基本上都是类似的。我们这里介绍的将以SVR4上的C编译系统为基础。 
  cc基本用法 
  一般我们只需要将C源程序的名字写在CC命令行中,cc即可对这些源文件(.c文件)进行编译。如果这些源文件中都没有main()函数的定义,那么cc将只能生成与各源文件相对应的目标文件(.o文件)。如果某个源文件中有main()函数的定义,则将把所有目标文件链接起来生成相应的可执行文件。缺省的情况下这个可执行文件的名字将是a.out。 

  例如,假定myprog.c是一个包含有main()函数定义的C语言程序文件,其中代码如下: 
  /********************************************* 
  * An example source code with errors          * 
  * Name:myprog.c                     * 
  *********************************************/ 

  #include <stdio.h>; 
  #include <ctype.h>; 
  # define TESTOK 1 
  int TestInput(char* ValuInput) 
  { 
    while (*ValueInput) 
    if (!isdigit(*ValueInput)) 
      return (! TESTOK); 
    else  
      *ValueInput++; 
     
    return ((100/atoi(ValueInput))? TESTOK:! TESTOK); 
  } 

  void main(int argc,char * argv[]) 
  { 
    int i; 
    for (i=1; i<argc; i++) 
    if(TestInput (argv) == TESTOK) 
     printf("The %dth value '%s' \tis OK! \n",i,argv); 
    else 
    printf("The %dth value '%s' \tis BAD! \n" ,i,argv); 
  } 

  对于此程序中的错误(设计错误)我们暂不理会。下一章我们介绍程序调试时再回过头来看看如何排除这个错误。 
  我们看到。在这个源程序文件中,定义了两个函数:TestInput()和main(),定义了一个宏TESTOK,同时包含了两个标准的头文件。为了把这个C程序转换成可执行文件,在shell提示符下输入: 
  $cc myprog.c 
  在程序中没有任何语法错误的情况下,cc将在当前目录下生成一个名为a.out的可执行文件,如: 
  $cc myproc.c 
  $ ls -l 
  -rwx------ 1 yxz users 5812 Aug 31 15:32 a.out 
  -rw------- 1 yxz users 716 Aug 31 15:27 myproc.c 
  $ 
  还可以看到这里a.out是一个可执行文件。当然这个程序由于在设计上有些失误,我们现在还不能马上就带参数运行。但不带参数运行还是可以的。只不过此时该程序什么都没有干,如: 
  $ a.out 
  $ 
  在程序中我们通过main函数的两个参数argc和argv而使程序能够引用shell命令行参数;这是UNIX环境下一种常用的编程技术。 
论坛热门帖子: [lch203] 写得蛮好的linux学习笔记(10-21)
[黑马制造] 学习java的30个目标(10-19)
[笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19)
[udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18)
[沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18)
TAG标签: 用法 基本 文件 程序 编译 我们 命令 cc 优化 目录 进行

最新评论 共有0位网友发表了评论

发表评论

评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名:(注册)
密码:
验证码:
匿名发表

网站地图友情连接交流论坛网站投稿广告服务联系我们留言本站长统计
Some rights reserved: www.chmhome.com, 鄂ICP备07010232号 E-mail:chinakafei@live.com,QQ:552766
中国咖啡技术网(Chmhome):国外编程技术书籍,中文编程手册,经典编程文章,交流技术,技术软件下载,计算机论文,毕业论文.