博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用宏的一点心得
阅读量:4957 次
发布时间:2019-06-12

本文共 411 字,大约阅读时间需要 1 分钟。

 用宏定义方法,传进来的参数可以是任何类型,在写宏时是不用声明是什么类型的参数,宏方法是在编译时编译进调用方法位置的,所以它可以使用调用它的函数中的所有变量,比如,你传进来两个结构体变量指针,在宏中,你可以不用再头文件中定义结构体,也可以调用结构体中的变量。还有一些宏声明的语法规则:不能加;号,中间不能有空格,“##”是记号粘连符号,#@将宏参数进行字符串字面量化,并且加‘’。#define B(x) #@x  为 B(1)------> '1'。#和@#一样只是加的是“”。

多行定义

#define MAX(X,Y) do { \
语句1; \
语句2; \
/* 注释的写法 */ \
} while(0) /* (no trailing ; ) */ \
 
 
每次换行都要加“\”,取消宏用#under 标识符

转载于:https://www.cnblogs.com/mouse-null/p/6539419.html

你可能感兴趣的文章
javascript 高级程序设计 七
查看>>
matlab中同一文件定义子函数的方法
查看>>
Convert Sorted Array to Binary Search Tree
查看>>
指针、帽子和女朋友
查看>>
关于垂直居中
查看>>
grunt 配置运行
查看>>
using
查看>>
Maven 系列教程1-安装和配置
查看>>
Eclipse 的快捷键以及文档注释、多行注释的快捷键
查看>>
SharePoint Web Part Error – The Specified Solution Was Not Found
查看>>
[转载] redis-cluster研究和使用
查看>>
第二次冲刺第四天
查看>>
zzw原创_解决Could not chdir to home directory /test/bdctool: Permission denied一例
查看>>
Leetcode:148_Sort List | O(nlogn)链表排序 | Medium
查看>>
Best Practices for Using Alpha
查看>>
meta标签中设置apple-itunes-app的意义
查看>>
java之代理设计模式
查看>>
AIDE
查看>>
Linux终端那件事儿
查看>>
spring bean容器学习
查看>>