• C Primer Plus(6) 中文版 第9章 函数 9.4 编译多源代码文件的程序


    9.4 编译多源代码文件的程序
    使用多个函数最简单的方法是把它们都放在同一个文件中,然后像编译只有一个函数的文件那样编译该文件即可。其他方法因操作系统而异。
    9.4.1 UNIX
    假定在UNIX系统中安装了UNIX C编译器cc(最初的cc已经提供,但是许多UNIX系统都给cc命令起了一个别名用作其他编译器指令,典型的是gcc或clang)。假设file1.c和file2.c是两个内含C函数的文件,下面的命令将编译两个文件并生成一个名为a.out的可执行文件:
    cc file1.c file2.c 
    另外,还生成了两个名为file1.o和file2.o的目标文件。如果后来改动了file1.c,而file2.c不变,可以使用以下命令编译第1个文件,并与第2个文件的目标代码合并:
    cc file1.c file2.o
    UNIX系统的make命令可自动管理多文件程序。
    注意,OS X的Terminal工具可以打开UNIX命令行环境,但是必须先下载命令行编译器(GCC和Clang)。
    9.4.2 Linux
    假定Linux系统安装了GUN C编译器GCC。假设file1.c和file2.c是两个内含C函数的文件,下面的命令将编译两个文件并生成名为a.out的可执行文件:
    gcc file1.c file2.c
    另外,还生成了两个名为file1.o和file2.o的目标文件。如果后来改动了file1.c,而file2.c不变,可以使用以下命令编译第1个文件,并与第2个文件的目标代码合并:
    gcc file1.c file2.o
    9.4.3 DOS命令行编译器
    绝大多数DOS命令行编译器的工作原理和UNIX的cc命令类似,只不过使用不同的名称而已。其中一个区别是,对象文件的扩展名是.obj,而不是.o。一些编译器生成的不是目标代码文件,而是汇编语句或其他特殊代码的中间文件。
    9.4.4 Windows和苹果的IDE编译器
    Windows和Macintosh系统使用的集成开发环境中的编译器是面向项目的。项目(project)描述的是特定程序使用的资源。资源包括代码文件。这种IDE中的编译器要创建项目来运行单文件程序。对于多文件程序,要使用相应的菜单命令,把源代码文件加入一个项目中。要确保所有的源代码文件都在项目列表中列出。许多IDE都不用在项目列表中列出头文件(即扩展名为.h的文件)因为项目只管理使用的源代码文件,源代码文件中的#include指令管理该文件中使用的头文件。但是,Xcode要在项目中添加头文件。
    9.4.5 使用头文件
    如果把main()放在第1个文件中,把函数定义放在第2个文件中,那么第1个文件仍然要使用函数原型。把函数原型放在头文件中,就不用在每次使用函数文件时都写出

  • 相关阅读:
    动画制作工具Aseprite for mac打造不一样的像素动画风格
    使用yolov8 进行实例分割训练
    代码随想录算法训练营第五十六天 | 动态规划 part 14 | 1143.最长公共子序列、1035.不相交的线、53. 最大子序和(dp)
    Spring - 什么是spring?
    我的Primavera Unifier学习环境介绍(软件+硬件)
    arthas the number of matched classs is 65
    TCP三次握手与四次挥手详细解释与文献参考
    前端算法:链表,逆置,递归的写法
    微信小程序主包和分包资源相互引用规则
    迅狐跨境商城系统|全平台兼容|前端采用uni-app跨端框架,后端采用ThinkPHP5框架
  • 原文地址:https://blog.csdn.net/weixin_40186813/article/details/126235308