第三章 2.1数据类型

一、数据类型

 

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 *

 

posted @ 2017-11-21 18:02  徐景祥  阅读(229)  评论(0编辑  收藏  举报