码迷,mamicode.com
首页 > 其他好文 > 详细

2.1数据类型

时间:2017-11-21 18:46:53      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:text   正数   枚举   end   names   highlight   字符   0.00   32位   

一、数据类型

 

1、     基本类型:

1)     整型:integer           

短整型:short  int(2Bytes)、整形:int(4Bytes)  长整型:long int(4Bytes)

有符号的整形:signed  无符号的整形:unsigned  (就是是否有正负号的区别)

2)     字符型    1B

Char

3)     浮点型   8Bytes

单精度型:float、双精度型:double、长双精度:long double

 

例子:

a=3.14159=0.314159*10的一次方(等同于0.314159e1)=0.00314159*10的3次方(等同于0.00314159e3)

 

 

4)     逻辑型  1B

bool(布儿)

2、     派生类型

1)     指针类别:*

2)     枚举类型:enum

3)     数组类型:[]

4)     共用体类型:struct

5)     类类型:class

3、空类型:void

 

扩充知识点:

C语言基本整型的数据范围什么意思

 

对于无符号数,根据占用的位数可以直接计算:
unsigned short 16位 0~2的16次方-1(即65535)
unsigned int 16位 0~2的16次方-1(即65535)
unsigned long 32位 0~2的32次方-1(即4294967295)

对于有符号数,由于0也占用一个位置,导致负数的边界值与正数的边界值不一样:
short 16位 - 2的(16-1)次方~2的(16-1)次方-1(即-32768~32767)
int 16位 - 2的(16-1)次方~2的(16-1)次方-1(即-32768~32767)
long 32位 - 2的(32-1)次方~2的(32-1)次方-1(即-2147483648~2147483647

 

 求每种数据类型的字长。

 1 #include <iostream>
 2 using namespace std;
 3 
 4 int main()
 5 {
 6     //整形 
 7     int a;
 8     unsigned int b;
 9     //短整型 
10     short int c;
11     unsigned short int d;
12     //长整形 
13     long int e;
14     unsigned long int f;
15     printf("整形a的字节为:"); 
16     cout<<sizeof(a)<<endl;
17     printf("\n无符号整形b的字节为:"); 
18     cout<<sizeof(b)<<endl;
19     printf("\n短整形c的字节为:"); 
20     cout<<sizeof(c)<<endl;
21     printf("\n无符号短整形d的字节为:"); 
22     cout<<sizeof(d)<<endl;
23     printf("\n长整形e的字节为:"); 
24     cout<<sizeof(e)<<endl;
25     printf("\n无符号整形f的字节为:"); 
26     cout<<sizeof(f)<<endl;
27 }
28 /*
29 *收获: 记住sizeof()是求类型的字长。 
30 *

 

2.1数据类型

标签:text   正数   枚举   end   names   highlight   字符   0.00   32位   

原文地址:http://www.cnblogs.com/kinson/p/7865364.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!