VC中C++数值范围的确定
1. Visual C++ 32 位和 64 位编译器可识别本文后面的表中的类型。

如果其名称以两个下划线 (__) 开始,则数据类型是非标准的。
下表中指定的范围均包含起始值和结束值。
| 类型名称 | 字节 | 其他名称 | 值的范围 |
|---|---|---|---|
| int | 4 | signed | –2,147,483,648 到 2,147,483,647 |
| unsigned int | 4 | unsigned | 0 到 4,294,967,295 |
| __int8 | 1 | char | –128 到 127 |
| unsigned __int8 | 1 | unsigned char | 0 到 255 |
| __int16 | 2 | short、short int、signed short int | –32,768 到 32,767 |
| unsigned __int16 | 2 | unsigned short、unsigned short int | 0 到 65,535 |
| __int32 | 4 | signed、signed int、int | –2,147,483,648 到 2,147,483,647 |
| unsigned __int32 | 4 | unsigned、unsigned int | 0 到 4,294,967,295 |
| __int64 | 8 | long long、signed long long | –9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 |
| unsigned __int64 | 8 | unsigned long long | 0 到 18,446,744,073,709,551,615 |
| bool | 1 | 无 | false 或 true |
| char | 1 | 无 | -128 到 127(默认)
0 到 255(当使用 /J 编译时) |
| signed char | 1 | 无 | –128 到 127 |
| unsigned char | 1 | 无 | 0 到 255 |
| short | 2 | short int、signed short int | –32,768 到 32,767 |
| unsigned short | 2 | unsigned short int | 0 到 65,535 |
| long | 4 | long int、signed long int | –2,147,483,648 到 2,147,483,647 |
| unsigned long | 4 | unsigned long int | 0 到 4,294,967,295 |
| long long | 8 | 无(与 __int64 等效) | –9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 |
| unsigned long long | 8 | 无(与无符号的 __int64 等效) | 0 到 18,446,744,073,709,551,615 |
| enum | varies | 无 | 请参阅本文后面的备注 |
| 浮动 | 4 | 无 | 3.4E +/- 38(7 位数) |
| double | 8 | 无 | 1.7E +/- 308(15 位数) |
| long double | 与 double 相同 | 无 | 与 double 相同 |
| wchar_t | 2 | __wchar_t | 0 到 65,535 |
2. 代码移植性问题,由于 语言标准允许可移植代码特定于实现,因此推荐不使用 _ _ intX 类型,因为这是Microsoft VC独有的数据类型。
(1)int 和 unsigned``int 类型具有四个字节的大小。
但是,由于语言标准允许可移植代码特定于实现,因此该代码不应依赖于 int 的大小。
(2)__intn 类型说明符声明 8 位、16 位、32 位或 64 位整数变量,其中 n 为 8、16、32 或 64。
endl;
VC中C++数值范围的确定的更多相关文章
- VC++中开发汇编语言(转)
汇编程序结构 一个显示字符串的汇编程序 程序格式 一.模式定义 二.includelib语句 三.函数声明语句 四.数据和代码部分 Visual C/C++环境 建立工程 汇编程序的调试 一.设置断点 ...
- VC中基于 Windows 的精确定时[转]
在工业生产控制系统中,有许多需要定时完成的操作,如定时显示当前时间,定时刷新屏幕上的进度条,上位 机定时向下位机发送命令和传送数据等.特别是在对控制性能要求较高的实时控制系统和数据采集系统中,就更需要 ...
- 转:VC中UpdateData()函数的使用
VC中UpdateData()函数的使用 UpdateData(FALSE)与UpdateData(TRUE)是相反的过程 UpdateData(FALSE)是把程序中改变的值更新到控件中去 ...
- VC中基于 Windows 的精确定时
在工业生产控制系统中,有许多需要定时完成的操作,如定时显示当前时间,定时刷新屏幕上的进度条,上位 机定时向下位机发送命令和传送数据等.特别是在对控制性能要求较高的实时控制系统和数据采集系统中,就更需要 ...
- VC中GetLastError()获取错误信息的使用,以及错误代码的含义
转载:http://www.seacha.com/article.php/knowledge/windows/mfc/2011/0423/335.html VC中GetLastError()获取错误信 ...
- VC++中的延时函数
原文链接:http://www.educity.cn/develop/478947.html VC中提供了很多关于时间操作的函数,编写程序时我们可以跟据定时的不同精度要求选择不同的时间函数来完成定时和 ...
- 深度解析VC中的消息(转发)
http://blog.csdn.net/chenlycly/article/details/7586067 这篇转发的文章总结的比较好,但是没有告诉我为什么ON_MESSAGE的返回值必须是LRES ...
- VC++中StretchBlt图像失真问题的解决办法
在 VC 中使用 StretchBlt 会碰到一些与点阵图大小缩放相关的一些问题.在扩展一个点阵图时,StretchBlt必须复制图素行或列.如果放大倍数不是原图的整数倍,那么此操作会造成产生的图像有 ...
- VC中实现文字竖排的简单方法
好多人都觉得在VC中实现文字竖排是一件很难的事情,其实可以使用“躺”着的字体很方便的实现文字竖排. Windows中有一些字体是“躺”着的,例如:@Fixedsys.@System.@宋体.@黑体等等 ...
随机推荐
- InstallShield 2015 安装 在vs2015
网上很少注册InstallShield 2015 的方法,而且很多以前版本的注册也很笼统,今天我就说说几个细节上的问题.相信大家看了会有帮助,有问题回帖,我会及时跟上, 先说说我遇到的问题 安装: ...
- 浅谈多重检验校正FDR
浅谈多重检验校正FDR Posted: 四月 12, 2017 Under: Basic By Kai no Comments 例如,在我们对鉴定到的差异蛋白做GO功能注释后,通常会计算一个p值 ...
- BZOJ1084或洛谷2331 [SCOI2005]最大子矩阵
BZOJ原题链接 洛谷原题链接 注意该题的子矩阵可以是空矩阵,即可以不选,答案的下界为\(0\). 设\(f[i][j][k]\)表示前\(i\)行选择了\(j\)个子矩阵,选择的方式为\(k\)时的 ...
- CF Round #509 (Div. 2)
前言:第一次打\(CF\),因为经验不足以及英语水平很烂,即便在机房大佬的带领下也是花了好久才读懂题目..\(A\)题直到\(11\)分钟才\(A\),题目一共才做了\(4\)题,太菜了.. A. H ...
- Java中的权限修饰符
What:访问控制权限是可以设置代码的访问范围. Where:访问权限既可以修饰类中的属性,又可以修饰类中的方法,而public和default还可以修饰类. 在同一个java文件里,公有类有且仅有一 ...
- POJ 3169.Layout 最短路
Layout Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 11612 Accepted: 5550 Descripti ...
- Codeforces 749C. Voting 模拟题
C. Voting time limit per test: 1 second memory limit per test: 256 megabytes input: standard input o ...
- python 打开文件对话框 filedialog tkinter GUI 编程
- -读取文件的gui编程 # _*_ coding:utf-8 _*_ import tkinter from tkinter import filedialog def openfiles2(): ...
- MySQL表的相关操作
操作数据表之前,必须先选择相应数据表所在的数据库 mysql> USE databaseName; -- 选择数据库 查看该数据库下的数据表 mysql> show tables; 确定数 ...
- 更精确的判断对象类型js方法
function isArray(o) { return Object.prototype.toString.call(o) === '[object Array]'; } function isRe ...