enum-使用宏管理你的枚举型数据
生活随笔
收集整理的這篇文章主要介紹了
enum-使用宏管理你的枚举型数据
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
高級枚舉型定義實現(xiàn)
C源文件
#include <sys/stat.h> #include <fcntl.h> #include <stdio.h> #include <string.h> #include <unistd.h> #include <stdlib.h> /* 實現(xiàn)原理說明: 首先在枚舉型結(jié)構(gòu)體中定義宏定義 #define ENUM_(name,num,size,desc) MACRO_##name = num, 然后在引入頭文件,頭文件包含的宏定義的調(diào)用將在這里進行展開,展開之后,會得到一個由宏定義擴展之后的 枚舉型結(jié)構(gòu)體 */ enum MACRO_ENUM {#define ENUM_(name,num,size,desc) MACRO_##name = num,#include "enum_example.h"MACRO_MAX, };int main(int argc, char *argv[]) {/* 經(jīng)過宏擴展的之后的枚舉型變量大小 */printf("after macro MACRO_MAX = [%d]\n", MACRO_MAX);return 0; }enum_example.h
/*** @brief 宏定義實現(xiàn)枚舉型的擴展* @ 該頭文件僅用于擴展對應文件宏定義*/#define EXAM1_SIZE 1ENUM_(EXAM1,EXAM1_SIZE,sizeof(int),"this is a enum example")#define EXAM2_SIZE 2 ENUM_(EXAM2,EXAM1_SIZE,sizeof(int),"this is a enum example")#define EXAM3_SIZE 30 ENUM_(EXAM3,EXAM3_SIZE,sizeof(int),"this is a enum example")總結(jié)
以上是生活随笔為你收集整理的enum-使用宏管理你的枚举型数据的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: wireshark抓包过滤指定的字节数据
- 下一篇: 作者:孙晨(1995-),女,华东师范大