#define () //宏定义函数加,编译时会替代成
例如:#define max(a,b) ((a)>(b)?(a):(b)) //这是大家经常会遇到的一个求较大值的函数(暂且让我称它为函数吧)
/*(1)与一般函数相比:宏函数会在编译时直接替代,不用传参,没有内存空间,相对省资源;宏函数编译时编译器不会检查语法等错误,若出现错误,要人工检查;但是宏函数不限制处理的参数数据类型,int能用,float也能用,一般函数则只能...
分类:
其他好文 时间:
2015-02-04 13:04:06
阅读次数:
108
可变参数给编程带来了很大的方便,在享受它带来的方便的同时,很有必要了解一下其实现方式,在了解编程语言的同时,也可以扩展编程的思路。可变参数需要用到3个宏函数和一个类型,他们都定义在中,分别是:va_start(vl)va_arg(vl, type)va_end(vl)其中vl是va_list类型,t...
分类:
编程语言 时间:
2015-01-19 00:03:35
阅读次数:
326
先来回忆下C语言中宏是怎么定义的,最基本的是定义常量:#define MAX_LEN 1024 这是最简单的常数宏定义,其中宏名按规定是要大写的,宏名在预编译时会由后面的值替代掉(预编译四大步骤:1、用宏名后面的值替换宏名;2、加载包含的头文件内容;3、判断逻辑假,并且去掉逻辑假代码;4、删除注释)。
C语言中宏函数定义格式:#define FUN_NAME(a, b, c)...
分类:
其他好文 时间:
2015-01-16 16:51:04
阅读次数:
220
《SAS编程与数据挖掘商业案例》学习笔记,本次重点:sas宏变量内容包含:宏变量、宏函数、宏參数、通配函数、字符函数、计算函数、引用函数、宏语句、宏应用1.宏触发器:%name-token:是一个宏语句或宏函数&name-token:是一个宏变量引用宏变量不依赖于sas数据集,能够在不论什么一个除数...
分类:
其他好文 时间:
2014-12-24 11:27:05
阅读次数:
544
OGG宏与C语言中的宏一样,提供了函数封装的功能,即可以将一些配置参数整理为一个宏,然后在多个参数文件中共用,针对环境复杂或多个复制点的情况尤其有用。下面我们将介绍如何创建一个宏的库,以及在OGG参数文件中如何使用创建的这个宏 library.一个宏函数库是宏的集合,宏可以是一个库文件中包含多个宏....
分类:
数据库 时间:
2014-11-27 01:30:38
阅读次数:
352
C语言中setjmp与longjmp学习笔记 一、基础介绍 头文件:#include 原型:intsetjmp(jmp_buf envbuf) 宏函数setjmp()在缓冲区envbuf中保存系统堆栈里的内容,供longjmp()以后使用。首次调用setjmp()宏时,返回值为0,然而longjmp...
分类:
编程语言 时间:
2014-11-19 17:56:17
阅读次数:
476
SAS macro variablesenable you to substitute text in your SAS programs(替代作用,和c++的 #define 差不多)When you reference a macro variable in a SAS program, SAS...
分类:
其他好文 时间:
2014-11-13 15:55:51
阅读次数:
2324
上一节简单的介绍了服务器消息处理的流程,想必大家对这方面有了初步的认识,接下来我们需要知道和掌握的便是其中一些重要的方法,进一步深入熟悉整个构架。 1、FD_*系列宏函数 FD_ZERO(fd_set *fdset) 将指定的文件描述符集清空,在对文件描述符集合进行设置前,必须对其进行初始化,如.....
分类:
Web程序 时间:
2014-11-09 11:12:36
阅读次数:
327
程序代码:
#include
using namespace std;
#define DEBUG
#ifndef DEBUG
#define ASSERT(x)
#else
#define ASSERT(x) if(!(x)){ cout<<"错误!ASSERT("<<#x<<")宏函数执行失败;"; cout<<"错误代码出现在第"<< __LINE__ <<"...
分类:
其他好文 时间:
2014-11-04 15:03:06
阅读次数:
163
在看代码的时候看到两个宏函数:likely() unlikely()
#define likely(x) __builtin_expect(!!(x), 1)
#define unlikely(x) __builtin_expect(!!(x), 0)
__builtin_expect()大致作用是处理分支预测,让编译器编译的时候可以做一些优化,优化可能性大的分支程序
if( like...
分类:
系统相关 时间:
2014-10-19 17:12:40
阅读次数:
230