zoukankan      html  css  js  c++  java
  • 预处理

    1. 宏和函数的选择实际上是时间和空间的的权衡。

      宏生成内联代码,即在程序中生成语句。如果调用 20次宏,即在程序中插入20行代码。如果调用函数20次,程序中只有一份函数语句的副本,所以节省了空间。但是,程序的控制必须跳转至函数内,随后再返回主调程序,这显然要比内联代码药费更多的时间。

    • 宏不用担心变量类型。这是因为宏处理的是字符串,而不是实际的值。
    • 对于简单的函数,程序员通常使用宏。
    1 #define MAX(X,Y) ((X) > (Y) ? (X) : (Y)) 
    2 #define ABS(X) ((X) < 0 ? -(X) : (X))
    3 #define ISSIGN(x) ((x) == 'x' || (x) == '-' ? 1 : 0) 
    • 宏名中不允许有空格,但是在替换字符串中可以有空格。
    • 用 () 把宏的参数和替换体括起来。避免宏展开出错。
    • 用大写字母表示宏函数名称。该惯例不如用大写字母表示宏常量广泛。但是,大写字母可以提醒程序员宏有可能产生副作用。
    • 如果打算使用宏来加快程序的运行速度,那么首先要确定使用宏和使用函数是否有较大差异。在程序中只使用一次的宏是无法明显减少程序的运行时间的。在循环嵌套中使用宏更有助于提高效率。

    2. 文件包含 #include

    1 #include <stdio.h>            // 查找系统目录
    2 #include "hot.h"        // 查找当前工件目录
    3 #include "/usr/biff/p.h"    //查找 /usr/biff 目录

    在大部分情况下,头文件的内容是编译器生成最终代码时所需的信息,而不是添加到最终代码中的材料。

  • 相关阅读:
    沈询:事务与分布式事务原理与实现
    c++ 幕客网
    Meet Dgraph — an open source, scalable, distributed, highly available and fast graph databas
    开发与系统管理----开发工具 左蓝
    奇虎360技术博客
    java 相关软件使用趋势
    长亭技术专栏 安全攻防技术分享
    tcp/ip RFC
    gentoo and arclinux
    孙鑫视频VC++深入详解学习笔记
  • 原文地址:https://www.cnblogs.com/luwudang/p/9640221.html
Copyright © 2011-2022 走看看