所有栏目 | 云社区 美国云服务器[国内云主机商]
你的位置:首页 > 云社区 » 正文

C语言中常量的默认类型?

发布时间:2020-04-12 08:40:00

资讯分类:常量  c语言  默认  类型  类型  都是  常数
C语言中常量的默认类型?

有时,你也会看到一些老的代码中,在一些整型常后面加一个大写或小写的 L 字母。如:989L 这是什么意思呢?原来,一个常数如果其范围允许,那么计算机默认将其认为是 int 类型的,那么要让计算机把某个数认为是 long int类型,就可以在其后面加 L 或 l。不过,这在以前的16位机器才有意义了。现在,我们的机器都是32位,long int 和 int 完全一样,都是占用4个字节,所以,我们没有必要这样用了。但是long long 类型常量定义时就得写3LL,而unsigned long long 为

3ULL

实型常数一般只用10进制表示。比如 123.45,或 .123。后者是 0.123的简写。不过我个人认为,少写一个0的代价是很容看错。

实型数还可以使用科学计数法,或曰指数形式,如:123e4、或123E4 都表示 123 * 104,即 1230000。

我们学过的实数数据类型有:float,double,long double。在C++中,默认的常数类型是double。比如你写:

1.234;

那么,C++按double类型为这个数分配内存,也就是说为它分配8个字节。如果要改变这一点,可以通过加后缀字母来实现。

加 f 或 F,指定为float类型。

加 l 或 L, 指定为double类型。

以下示例:

12.3f //float类型

12.3 //默认类型(double)

12.3L //long double类型

12.3e400 //long double类型,因为值已不在double类型的取值范围内

C语言中常量的默认类型?

C语言中的常量一共有4种:整数常量:integer-constant浮点常量:floating-constant枚举常量:enumeration-constant字符常量:character-constant常量是一个右值,可以把右值赋给一个左值int a = 1; 这里的1确实是常量,是一个整数常量

留言与评论(共有 0 条评论)
   
验证码:
Top