第14章 预处理及用户配置文件

• 预处理命令通常在程序编译时进行一些符号处 理,其并不执行具体的硬件操作。C51语言中的预 处理命令主要有宏定义指令、文件包指令和条 件编译指令,还有其他一些调试时使用的指令。 本章将详细介绍各种预处理命令以及C51的用户配 置文件,并结合一定的程序实例以加深理解。本 章包括:

  • 宏定义指令

  • 文件包指令

  • 条件编译指令

  • C51编译器的控制指令

  • C51的用户配置文件

14.1 预处理命令概述

• C51语言中提供了各种预处理命令,类似于汇编程序中的伪指令。一般来说,在对源程序进行编译前,C51编译器需要 先对程序中的预处理命令进行处理,然后将预处理的结果与源程序一并进行编译,最后产生目标代码。通过这些预处 理命令,在很大程度上为C51提供功能和符号等方面的扩展,使用预处理命令也可以提高程序的可读性。

  • 为了与源程序中的语句相区

    c语言编译命令的更多相关文章

    1. 14. Go 语言编译与工具

      Go 语言编译与工具 Go 语言的工具链非常丰富,从获取源码.编译.文档.测试.性能分析,到源码格式化.源码提示.重构工具等应有尽有. 在 Go 语言中可以使用测试框架编写单元测试,使用统一的命令行即 ...

    2. [C语言]在命令行编译执行程序

      ----------------------------------------------------------------------------------------- [开始] 1. 在M ...

    3. 不可或缺 Windows Native (4) - C 语言: 预处理命令,输入,输出

      [源码下载] 不可或缺 Windows Native (4) - C 语言: 预处理命令,输入,输出 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 预处理命令 输入 ...

    4. c语言编译预处理和条件编译执行过程的理解

      在C语言的程序中可包括各种以符号#开头的编译指令,这些指令称为预处理命令.预处理命令属于C语言编译器,而不是C语言的组成部分.通过预处理命令可扩展C语言程序设计的环境. 一.预处理的工作方式 1.1. ...

    5. 不同优化选项对ARM下C语言编译的影响

      我们知道在C语言编译时,有那么几个常用的优化编译选项,分别是-O0,-O1,-O2,-O3以及-Os.之前一直觉得既然是优化选项,顶多是优化一下逻辑,提高一些效率或者减少一下程序大小而已.很少会觉得它 ...

    6. C语言预处理命令总结大全

      C程序的源代码中可包括各种编译指令,这些指令称为预处理命令.虽然它们实际上不是C语言的一部分,但却扩展了C程序设计的环境.本节将介绍如何应用预处理程序和注释简化程序开发过程,并提高程序的可读性.ANS ...

    7. C语言预处理命令详解

      一  前言 预处理(或称预编译)是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所作的工作.预处理指令指示在程序正式编译前就由编译器进行的操作,可放在程序中任何位置. 预处理是C语言的一个重要功能 ...

    8. GCC编译命令常用选项

      GCC是GUN Compiler Collection的简称,除编译程序外,还包含其他相关工具.GCC可将高级语言编写的源代码构建成计算机直接执行的二进制代码.GCC是Linux平台下最常用的编译程序 ...

    9. [转]C语言预处理命令详解

      转载:https://www.cnblogs.com/clover-toeic/p/3851102.html 一  前言 预处理(或称预编译)是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所作的 ...

    随机推荐

    1. Weex-语法笔记 一

      p.p1 { margin: 0.0px 0.0px 2.0px 0.0px; font: 14.0px "PingFang SC Semibold"; color: #45454 ...

    2. 通过SvcUtil.exe 生成 Wcf 客户端代理

      WCF服务调用通过两种常用的方式:一种是借助代码生成工具SvcUtil.exe或者添加服务引用的方式,一种是通过ChannelFactory直接创建服务代理对象进行服务调用. SvcUtil.exe ...

    3. USACO 2.3 Cow Pedigrees

      Cow Pedigrees Silviu Ganceanu -- 2003 Farmer John is considering purchasing a new herd of cows. In t ...

    4. 【1】ubuntu 安装docker

      官方支持安装docker的Ubuntu版本: ubuntu trusty 14.04(LTS) (64位) ubuntu precise 12.04(LTS) (64位) ubuntu raring ...

    5. 使用bootstrap建立响应式网页——通栏轮播图(carousel)

      1.bootstrap提供了js插件——轮播图 我们还是照旧,直接拿过来用,需要改的地方再说. 2.修改 小屏幕看小图,大屏图看大图:这个可以利用自定义属性(data-XXX)data-img-lg( ...

    6. Chapter 2 Open Book——28

      I kept my voice indifferent. "May I?" 我尽量让我的声音显得不那么突兀,我能试试吗? 我尽量让自己的声音显得漠不关心.“可以让我看一下吗?” H ...

    7. 第六十七节,html表单元素

      html表单元素 学习要点: 1.表单元素总汇 2.表单元素解析 本章主要探讨HTML5中表单元素,表单元素用于获取用户的输入数据.   一.表单元素总汇 HTML5的表单中,提供了各种可供用户输入的 ...

    8. 《JS权威指南学习总结--8.4 作为值的函数》

      内容要点:   函数可以定义,也可以调用,这是函数最重要的特性.函数定义和调用是JS的词法特性,对于其他大多数编程语言来说也是如此.然而在JS中,函数不仅仅是一种语法,也是值,也就是说,可以将函数赋值 ...

    9. js返回上一页并刷新代码整理

      一:JS 重载页面,本地刷新,返回上一页 复制代码 代码如下: <a href="javascript:history.go(-1)">返回上一页</a> ...

    10. Qt_DX

      #ifndef MY_FRAME__HH__ #define MY_FRAME__HH__ #include <QtGui/QWidget> struct IDirect3D9; stru ...