[Constant]C中常数后缀的使用

原创 2015年07月11日 00:24:35
   问题描述:C/C++程序许多时候会看到一个常数后面会跟一个后缀说明,比如UL。常数后缀许多时候不用也不会有问题,只要考虑常数赋给变量时不溢出,因为变量进行计算时会将常数转换成自己的类型。但是有时候就是因为常数没有指定类型,而且数值很小(比如2)不会有溢出问题,也会产生很隐蔽的bug。比如有次将编译器选项的优化项选择为最高(那样源代码编译后生成的二进制文件会最小),在使用printf函数在LCD屏输出常数2时就出现了问题,输出的这个数字会不断改变,然后将该常数类型用后缀限定后,就一切正常了。所以在使用的编译器不是那么聪明,或者将编译器选项按照自己要求进行了修改后,程序中许多地方都要严格的进行书写。因为常数后缀在许多时候的关键作用,于是搜集资料进行了整理与学习。
   数的进制:二进制数,八进制数(O),十进制数,十六进制数(0x)。程序中十进制数和十六进制数最为常见,八进制数很少见,二进制数只是一种表示(程序中并不能直接书写)。
   整数常数后缀:u或U(unsigned)、l或L(long)、u/U与l/L的组合(如:ul、lu、Lu等),u和l没有顺序区别。例:100u;-123u; 0x123l。
   浮点常数后缀:科学计数形式和小数点形式。浮点常数默认是double的。f或F(单精度浮点数)、l或L(长双精度浮点数)。(注:因浮点型常数总是有符号的,故没有u或U后缀)。例:1.23e5f;1.23l; -123.45f。
版权声明:本文为博主原创文章,未经博主允许不得转载。

C/C++的数值常数后缀的使用总结

1.数值常数有:整型常数、浮点常数;   2.只有数值常数才有后缀说明;   3.数值常数后缀不区分字母大小写。   (1)整型常数的表示形式有:十进制形式、以0开头的八进制形式、以0x开头的十...
  • pizi0475
  • pizi0475
  • 2015年07月09日 21:47
  • 1285

C语言中常量后缀,u或U,l或L,f或F问题

小白在学习过程中有时会在程序中看到0u或是0ul等常量有后缀的情况,如果没接触到C语言常量后缀的话可能就有点疑惑~ 其中的u为unsigned,l为long,f为float           ...
  • kernel1101
  • kernel1101
  • 2015年08月23日 18:27
  • 4045

解决Undefined class constant 'MYSQL_ATTR_INIT_COMMAND'

解决ThinkPHP错误Undefined class constant 'MYSQL_ATTR_INIT_COMMAND' 标签: thinkphpphp_pdo 2016-08-19 ...
  • IT__LiangChen
  • IT__LiangChen
  • 2017年02月06日 13:38
  • 8370

C语言数值常数

0UL 表示 无符号长整型 0 1UL 表示 无符号长整型 1 如果不写UL后缀,系统默认为:int, 即,有符号整数。1.数值常数有:整型常数、浮点常数; 2.只有数值常数才有后缀说明; 3.数值...
  • skyie53101517
  • skyie53101517
  • 2015年09月02日 16:07
  • 888

error C2051: case expression not constant ?

今天编程。在键盘响应函数里需要用到下面的函数,       void keyboard(unsigned char key, int x, int y)     {           ...
  • zhongjling
  • zhongjling
  • 2012年05月04日 19:12
  • 7508

java中常量的设置(Constant)

java静态变量实现方式: 1,接口方式。 2,定义final stati变量方式。 3,enum方式。 4,定义properities方式。...
  • qiyejunlintian
  • qiyejunlintian
  • 2015年11月20日 12:53
  • 5304

TensorFlow学习(二):变量常量类型

更新时间:2017.2.27 tensorflow 1.0出来了,API和以前有了一些不一样,所以这里把把之前的代码迁移到新的上面去。 格式有问题,慢慢调….一.概览还记的上节TensorFlow...
  • xierhacker
  • xierhacker
  • 2016年11月13日 21:03
  • 30161

[AngularJS面面观] 21. 依赖注入 --- constant到底如何而来

在上一篇文章中,我们终于见到了angular中依赖注入的总体结构图。从这幅图中我们可以知道在angular内部是有两个注入器协同工作来实现我们习以为常的依赖注入特性的。 结合上图简单回顾一下an...
  • dm_vincent
  • dm_vincent
  • 2016年08月19日 23:11
  • 5465

VBS基础篇 - 常数(2) - VBScript 常数(2)

MsgBox 常数        下列常数与 MsgBox 函数一起使用,标识在消息框中出现的按钮、图标,并指定默认按钮。另外,还可以指定消息框的样式。因为这些常数在VBScript中被建立,您在使...
  • hai673580326
  • hai673580326
  • 2014年08月26日 11:12
  • 352

struts2中的constant配置详解 struts.xml

  • saindy5828
  • saindy5828
  • 2013年12月04日 16:12
  • 2206
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[Constant]C中常数后缀的使用
举报原因:
原因补充:

(最多只允许输入30个字)