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.@宋体.@黑体等等 ...
随机推荐
- C# 一个数组未赋值引发的错误
在电脑前又是一天,后来脑子也糊里糊涂,可能是基础还不牢固,设置断点,找了找问题才发现数组定义出了问题, 我是这样定义数组的,string[] auths ; string auths=new stri ...
- __PRETTY_FUNCTION__, __FUNCTION__, __func__
__PRETTY_FUNCTION__, __FUNCTION__, __func__这三者的区别是什么? http://stackoverflow.com/questions/4384765/wha ...
- 关于RNA-Seq数据去接头(Adapter)这事需要讲一讲
关于RNA-Seq数据去接头(Adapter)这事需要讲一讲 RNA-Seq adapter barcode cutadapt 首先来了解一下三个概念: 1.adapter是一段短的序列已知的核酸链, ...
- Linux命令大全完整版
1. linux系统管理命令 adduser 功能说明:新增用户帐号.语 法:adduser补充说明:在Slackware中,adduser指令是个script程序,利用交谈的方式取得输入的用户帐 ...
- MySQL用户及权限管理
查看用户 mysql>SELECT user, host FROM mysql.user; # 检索mysql数据库中的user表 % 表示所有主机的IP 查看当前用户 mysql> se ...
- ajax 跨域请求没有带上cookie 解决办法
公司项目前后端分离.. 前端全部html 静态页面.. 后端java 接口服务 由于前后端分离,出现跨域问题. 为了解决,我们使用jsonp 方式请求接口服务,暂时解决了跨域问题(使用jquery a ...
- VSFTPD虚拟用户配置
转载:http://www.cnblogs.com/allenjin/archive/2011/12/03/2274542.html 以下操作验证OK!!!! VSFTPD虚拟用户配置 VSFTP = ...
- php file_get_contents 使用3法
<?php //GET function http_get($url, $params){ return file_get_contents($url.'?'.http_build_query( ...
- 之前的一些Oracle的经验总结
1. 安装: 1) 关于字符集的选择,现在还不很了解,修改是需要进入一个模式下才可以修改,当然新建一个数据库实例的时候可以重新设定: UTF8是相对比较大的一个字符集, 可以简单实用这个就能保存很多的 ...
- 关于传统项目打成war包的的分析
技术在不断的革新,以前的项目没有jar管理工具时,都是手动将依赖的jar拷贝到项目之下,然后Build Path,之后Maven出现了,出现了jar包中央仓库,所有的jar包资源集中在这里,免去频繁去 ...