码迷,mamicode.com
首页 > 编程语言 > 详细

c++数据类型

时间:2015-04-24 00:55:27      阅读:321      评论:0      收藏:0      [点我收藏+]

标签:

数据类型 写法
布尔型 bool
字符型 char   wchar_t
整数型 int  short  long   longlong
浮点型 double  float
void 型 不占内存
常量  

技术分享

 

整数型:有符号、无符号

 

技术分享

 

有符号最大的整数:

技术分享

2147483647=    16进制  7FFFFFFF     首位0  表示正  首位1表示负数

有符号最大负数是:-1

最小是 :

技术分享

无符号略

 

 

补充:

在solution 中我们的项目会有如下两种方式#include  相对路径

#include "stdafx.h" //从本地目录开始查找,如果本地目录查找不到,在到系统目录查找。
#include <iostream> //从系统目录查找,如果系统目录查找不到,在到本地目录查找。

本地目录:及时solution位置

系统目录:是vs的安装目录

 

demo:

   1:  
   2: #include "stdafx.h" //先从本地找,本地找不到去系统找
   3: #include <iostream> //现在系统找(vs) ,如果在系统找不到就去到本地找
   4:  
   5: int _tmain(int argc, _TCHAR* argv[])
   6: {
   7:     using std::cout;
   8:     using std::cin;
   9:     using std::endl;
  10:     int number = 0x7FFFFFFF;
  11:     cout << "number:" << number << endl;
  12:     unsigned int unnumber = -2;//-1  4294967295   无符号的     
  13:                                //-2 4294967294    无符号-2 的2进制  
  14:     cout << unnumber << endl;
  15:     system("pause");
  16:     return 0;
  17: }
  18:  

 

 

 

具体的2进制转换为10进制

例如 2进制的0000 0000 0000 0000 0000 0000 0000 0001

    =》 1*2^0 +0*2^1+……….0*2^31=1

 

浮点型

float  单精度

4byte    可以表示小数点后7位

技术分享

12.25

12=1100

0.25:

0.25*2=0.5   0

0.5*2=1        1

那么12.25  的float   1100.01

 

对于存储我们要 变为  1.10001    也就是小数点向前移动3位   这个时候将7位存储为   3位(3)  +(8进制最大)127=129(得到10进制 )   这个要转换为2进制

1000001

那么这个就是

?1000001 10001…..

double 双精度

8byte =64bit

第一位是符号位, 15位有效。

 

以后要用double   ,为什么有float 

因为以前 的float 最快,以前是 32位的。

现在128位。计算double的快。

demo:

   1: // UnsignedSingedDemo.cpp : 定义控制台应用程序的入口点。
   2: //
   3:  
   4: #include "stdafx.h"
   5: #include <iostream>
   6:  
   7: int _tmain(int argc, _TCHAR* argv[])
   8: {
   9:     using std::cout;
  10:     using std::cin;
  11:     using std::endl;
  12:     int number = 0x7FFFFFFF;
  13:     cout << "number:" << number << endl;
  14:     unsigned int unnumber = -2;//-1  4294967295
  15:     //-2 4294967294
  16:     cout << unnumber << endl;
  17:  
  18:     float fnumber = 1.12345678901234567890;  //加f强转   这里加不加都可以
  19:     cout << "fnumber"<<fnumber << endl;//7位
  20:     double dnumber = 1.12345678901234567890;
  21:     cout << "dnumber" << dnumber << endl;
  22:     system("pause");
  23:     return 0;
  24: }
  25:  

 

字符型:

1byte

char  :0—255   0000 0000   8位    

利用assii 表示字符 来进行转换

 

wchar_t

4byte

根据unicode  进行编码

包含了ascii表     多国语言

0—65535

 

布尔型:

1个字节  8bit  

值只能是0或1

1==true

0==false

可以用其他的任何值相转换    这就要求用8位

 

 

demo:  

1\输入成绩,告诉我们等级

自己定A  B   C 区间

2\输入一个班级的成绩,也可以不输入,直接用数组表示  20人

输出90分以上的百分比

输出80--90的百分比

上述的两道demo。下个博客我会公布,亲期待哦。。。

我叫芥末小弟,我做我自己的博客。有问题欢迎投递:jiemoxiaodi@outlook.com  email

我的qq:1258601435   加我请备注

谢谢,转载请注明出处。Thanks….

c++数据类型

标签:

原文地址:http://www.cnblogs.com/jiemoxiaodi/p/4452225.html

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