美文网首页
宏定义问题记录集

宏定义问题记录集

作者: leonardni | 来源:发表于2017-12-02 16:15 被阅读18次

文章结构


1.c语言 #define 中的UL

一、c语言 #define 中的UL

U和L是 整数文字量的后缀修饰,用于显示指明整数文字量的类型为unsigned int(U)和long int(L)。
类似的还有浮点数文字量的后缀修饰F或f,用于指明文字量表示的是一个float,而不是默认情况下的double。
主要是指定宏定义的数据类型为无符号整形,因为C语言中默认宏中的数字是整型数据。防止数值溢出,产生问题。
例如:一年的秒数可以这样写

#define SECONDS_PER_YEAR  (60*60*24*365)UL
注意:在Xcode中不能将
#define SECONDS_PER_YEAR  60*60*24*365UL 写成
#define SECONDS_PER_YEAR  (60*60*24*365)UL在
编译GCC程序,提示这个错误 error: expected ‘,’ or ‘;’ before ‘UL’;是因为UL写在了括号外面,无法与数据进行匹配;
注:我用其他编译器验证#define (60*24*365)UL是可以编译通过的!!

相关文章

  • 宏定义问题记录集

    文章结构 1.c语言 #define 中的UL 一、c语言 #define 中的UL U和L是 整数文字量的后缀修...

  • odoo基础(ORM API)

    一、Recordsets(记录集) 与模型和记录的交互是通过记录集执行的,记录集是同一模型的有序记录集。模型上定义...

  • 【C/C++】宏(macro)定义与使用

    文章结构如下: 宏的定义 宏的替换与代码展开 宏的替换产生的问题 获取宏参数名称 宏参数的结合 宏的取消 宏定义的...

  • C语言-宏定义转换为头文件

    问题描述:宏定义转换为头文件 源代码: 源代码:/长度单位转换-宏定义/#include #define Mile...

  • jni-01、宏、jni函数详解、数据获取、类型转换、签名规则

    宏语法 宏定义 解决循环拷贝的问题 T2.h 宏的取消 #undef 宏 宏变量 真实开发中:宏都是大写 宏函数...

  • 11.逻辑备份

    逻辑备份恢复pg_dump/pg_restore 逻辑备份通过读取数据库记录集,且将记录集写入文本文件或自定义转储...

  • C语言 预处理指令

    一 .宏定义 #define 宏定义宏定义会在预处理的时候,用宏定义的值来替换宏的名称 定义格式 "#define...

  • swift&&OC

    宏定义 OC中的宏定义 swift中的宏定义 OC中宏定义的方式,在swift中是不可用的,在swift中,宏定义...

  • [iOS功能]- 宏定义

    单行宏定义 多行宏定义

  • 准备:回顾c

    宏定义 关键字 define 定义一个常量的方法(即宏定义) 带参数的宏定义 宏函数的定义 使用宏函数的好处是,不...

网友评论

      本文标题:宏定义问题记录集

      本文链接:https://www.haomeiwen.com/subject/kpbnbxtx.html