编程笔记
1、定义通用文件时,可以将文件名称命名: zglobal.h
2、 pop 对应 push, begin 对应 end,front 对应back, new 对应 delete alloc 对应 free insert 对应 remove
3、RIL(Radio Interface Layer) 用于应用层与底层通讯中间件
4、C打印枚举
#define DOGS { C(JACK_RUSSELL), C(BULL_TERRIER), C(ITALIAN_GREYHOUND) } #undef C #define C(a) ENUM_##a enum dog_enums DOGS; #undef C #define C(a) #a char *dog_strings[] = DOGS; char *dog_to_string(enum dog_enums dog) { return dog_strings[dog]; } 前 4 行我们得到了枚举: enum dog_enums { ENUM_JACK_RUSSELL, ENUM_BULL_TERRIER, ENUM_ITALIAN_GREYHOUND } 中间三行,我们得到了字符串数组: char *dog_strings[] = {"JACK_RUSSELL", "BULL_TERRIER", "ITALIAN_GREYHOUND"} 最后 dog_to_string 函数利用枚举值(从 0 开始)和数组 index(也从 0 开始) 的对应关系,实现枚举到字符串的转换。 于是我们可以像这样使用: int main(){ enum dog_enums d = ENUM_JACK_RUSSELL; printf("enum %s\n",dog_to_string(d));//enum JACK_RUSSELL d = ENUM_ITALIAN_GREYHOUND; printf("enum %s\n",dog_to_string(d));//enum ITALIAN_GREYHOUND }
参考链接: https://mp.weixin.qq.com/s/5VBi0AOoInnIw-9mZ9b3Hw
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2019-07-23 lua TRACEBACK错误打印
2019-07-23 sqlite 查看数据库表和字段
2016-07-23 linux 安装 zsh