宏 宏定义

#define <宏名>  <字符串>
例: #define N 2+2
//预处理时:将程序中N的地方用2+2代替

(2) 带参数的宏定义:

#define <宏名> (<参数表>) <宏体>
例: #define A(x) x

-----以上为宏定义--------

注意:

  • 宏替换是简单的替换。
  • 其实,所有预处理: 经过预处理器处理的源程序与之前的源程序有所有不同,在这个阶段所进行的工作只是纯粹的替换与展开,没有任何计算功能。
  • 宏:就是 N
时间: 2024-08-07 00:18:52

宏 宏定义的相关文章

【ThinkingInC++】12、宏处理定义

/** * 功能:宏处理定义 * 时间:2014年8月12日20:02:07 * 作者:cutter_point */ #include<iostream> #include<stdlib.h> using namespace std; #define PRINT(STR, VAR) cout<<STR "=" <<VAR<<endl; //这里宏定义之后,所有PRINT("STR", VAR) //都会被

C++中宏的定义与用法(现已被内联函数所代替)

在noip中,宏还是被经常采用,所以这里讲一下,C++中宏的定义与用法 第一种用法——配合条件编译:#define DEBUG 定义一个叫DEBUG的标识符.它应该与#ifdef或#ifndef配合使用.举例如下: #define DEBUG #ifdef DEBUG void print(int v) { cout << v << endl;} #else void print(int) {} #endif 如果符号DEBUG存在,那么编译器会编译上面的.能输出数值的print,

宏函数定义继承类

//: ORDER.CPP -- Order of constructor calls // with inheritance #include <iostream.h> #define inherit(derived, base) class derived : public base { public: derived() { cout << #derived << endl; } }; class X {}; inherit(A, X) inherit(B, A)

BOOST_ASIO_ERROR_CATEGORY_NOEXCEPT 宏重定义

场景说明 LIVE555工程使用boost库编译出错问题说明 错误提示           LIVE555调用boost1.58库的时候,出现如下的编译错误: "BOOST_ASIO_ERROR_CATEGORY_NOEXCEPT": 宏重定义 参见"BOOST_ASIO_ERROR_CATEGORY_NOEXCEPT"的前一个定义 error C3861: "GetAcceptExSockaddrs": 找不到标识符error C2065: &

单例模式:Qt本身就提供了专门的宏 Q_GLOBAL_STATIC 通过这个宏不但定义简单,还可以获得线程安全性

标题起的是有点大 主要是工作和学习中,遇到些朋友,怎么说呢,代码不够Qt化 可能是由于他们一开始接触的是 Java MFC 吧 接触 Qt 7个年头了 希望我的系列文章能抛砖引玉吧 单例模式 很多人洋洋洒洒写了一大堆 比如这里 http://xtuer.github.io/qtbook-singleton/ 比如这里 http://m.blog.csdn.net/Fei_Liu/article/details/69218935 但是Qt本身就提供了专门的宏 Q_GLOBAL_STATIC 通过这

unity平台的预处理(宏的定义)

在unity的跨平台中,我们常常会在各个平台游走,如安卓版,苹果版,PC版.在不同的平台上,我们要做不同的操作.然而我们可以使用unity的自带的宏定义来做平台的判断.Unity帮我们定义了例如以下平台预处理.(还有一些版本号的宏定义,这里没有写出来.) 我们使用#if #elif #endif进行宏命令的判断,unity会自己判断哪些条件成立,然后执行指定的代码.例子如下: 此外,我们还可以自己对宏命令进行定义:在edit-project settings-player中的设定栏可以添加属于自

简单讲解C语言中宏的定义与使用

宏定义是预编译功能的一种, 预编译又称为预处理, 是为编译做的预备工作的阶段.处理#开头的指令, 比如拷贝 #include 包含的文件代码,#define宏定义的替换,条件编译等. 使用宏定义的好处:使用宏定义的好处:可提高程序的通用性和易读性,减少不一致性,减少输入错误和便于修改.例如 π 这个常量,我们有时候会在程序的多个地方使用,如果每次使用都重新定义,一来比较麻烦,二来容易出错,所以我们可以把 π 做成宏定义来使用.   语法说明: (1)宏名一般用大写 (2)使用宏可提高程序的通用性

C语言 调试宏的定义

定义: #define EXAMPLE(x) printf("x = %d", x) i = 10; j = 11; EXAMPLE(i) EXAMPLE(j) i = 20; j = 21; EXAMPLE(i) EXAMPLE(j) 输出: x = 10 x = 11 x = 20 x = 21 这个输出不是我们要的效果. 修改宏定义中 printf 的使用. #define EXAMPLE(x) printf( #x" = %d", x)  输出: i = 1

iOS开发——常用宏的定义

有些时候,我们需要将代码简洁化,这样便于读代码.我们可以将一些不变的东东抽取出来,将变化的东西作为参数.定义为宏,这样在写的时候就简单多了. 下面例举了一些常用的宏定义和大家分享: 1. 判断设备的操作系统是不是ios71.#define IOS7   (  [[[UIDevice currentDevice].systemVersion doubleValue] >= 7.0] ) 2. 判断当前设备是不是iPhone51.#define kScreenIphone5    (([[UIScr