c c++各种类型的取值范围
int类型的变量存储值从-2147483648到2147483647
//例子
#include <iostream>
using namespace std;
int main(void)
{ cout<<"int类型的取值范围为:"<<INT_MIN<<"到"<<INT_MAX<<endl;
return ;
}
unsigned int类型的变量存储值从0到4294967295
//例子
#include <iostream>
using namespace std;
int main(void)
{
cout<<"unsigned int类型的取值范围为:0到"<<UINT_MAX<<endl;
return ;
}
short类型的变量存储值从-32768到32767
unsigned short类型的变量存储值从0到65535
char类型的变量存储值从-128到127
unsigned char类型的变量存储值从0到255
long类型的变量存储值从-2147483648到2147483647
unsigned long类型的变量存储值从0到4294967295
long long类型的变量存储值从-9223372036854775808到9223372036854775807
unsigned long long类型的变量存储值从0到18446744073709551615
最小的非零float类型变量的值的是1.175e-038
最大的float类型变量的值的是3.403e+038
最小的非零double类型变量的值的是2.225e-308
最大的double类型变量的值的是1.798e+308
最小的非零long double类型变量的值的是-0.000e+000
最大的long double类型变量的值的是-1.#QOe+000
float类型的变量提供6位精度的小数位数
double类型的变量提供15位精度的小数位数
long double类型的变量提供18位精度的小数位数
#include <stdio.h>
#include <limits.h>
#include <float.h>
#include <stdlib.h>
int main(void) { printf("char类型的变量存储值从%d到%d\n", CHAR_MIN, CHAR_MAX); printf("unsigned char类型的变量存储值从0到%u\n", UCHAR_MAX); printf("short类型的变量存储值从%d到%d\n", SHRT_MIN, SHRT_MAX); printf("unsigned short类型的变量存储值从0到%u\n", USHRT_MAX); printf("int类型的变量存储值从%d到%d\n", INT_MIN, INT_MAX); printf("unsigned int类型的变量存储值从0到%u\n", UINT_MAX); printf("long类型的变量存储值从%ld到%ld\n", LONG_MIN, LONG_MAX); printf("unsigned long类型的变量存储值从0到%lu\n\n", ULONG_MAX); printf("long long类型的变量存储值从%lld到%lld\n", LLONG_MIN, LLONG_MAX); printf("unsigned long long类型的变量存储值从0到%llu\n", ULLONG_MAX); printf("最小的非零float类型变量的值的是%.3e\n", FLT_MIN); printf("最大的float类型变量的值的是%.3e\n", FLT_MAX); printf("最小的非零double类型变量的值的是%.3e\n", DBL_MIN); printf("最大的double类型变量的值的是%.3e\n\n", DBL_MAX); printf("最小的非零long double类型变量的值的是%.3Le\n", LDBL_MIN); printf("最大的long double类型变量的值的是%.3Le\n", LDBL_MAX); printf("float类型的变量提供%u位精度的小数位数\n", FLT_DIG); printf("double类型的变量提供%u位精度的小数位数\n\n", DBL_DIG); printf("long double类型的变量提供%u位精度的小数位数\n", LDBL_DIG); system("pause"); return ;
}
#include<iostream>
#include<string>
#include <limits>
using namespace std; int main()
{ cout << "type: \t\t" << "************size**************"<< endl;
cout << "bool: \t\t" << "所占字节数:" << sizeof(bool);
cout << "\t最大值:" << (numeric_limits<bool>::max)();
cout << "\t\t最小值:" << (numeric_limits<bool>::min)() << endl;
cout << "char: \t\t" << "所占字节数:" << sizeof(char);
cout << "\t最大值:" << (numeric_limits<char>::max)();
cout << "\t\t最小值:" << (numeric_limits<char>::min)() << endl;
cout << "signed char: \t" << "所占字节数:" << sizeof(signed char);
cout << "\t最大值:" << (numeric_limits<signed char>::max)();
cout << "\t\t最小值:" << (numeric_limits<signed char>::min)() << endl;
cout << "unsigned char: \t" << "所占字节数:" << sizeof(unsigned char);
cout << "\t最大值:" << (numeric_limits<unsigned char>::max)();
cout << "\t\t最小值:" << (numeric_limits<unsigned char>::min)() << endl;
cout << "wchar_t: \t" << "所占字节数:" << sizeof(wchar_t);
cout << "\t最大值:" << (numeric_limits<wchar_t>::max)();
cout << "\t\t最小值:" << (numeric_limits<wchar_t>::min)() << endl;
cout << "short: \t\t" << "所占字节数:" << sizeof(short);
cout << "\t最大值:" << (numeric_limits<short>::max)();
cout << "\t\t最小值:" << (numeric_limits<short>::min)() << endl;
cout << "int: \t\t" << "所占字节数:" << sizeof(int);
cout << "\t最大值:" << (numeric_limits<int>::max)();
cout << "\t最小值:" << (numeric_limits<int>::min)() << endl;
cout << "unsigned: \t" << "所占字节数:" << sizeof(unsigned);
cout << "\t最大值:" << (numeric_limits<unsigned>::max)();
cout << "\t最小值:" << (numeric_limits<unsigned>::min)() << endl;
cout << "long: \t\t" << "所占字节数:" << sizeof(long);
cout << "\t最大值:" << (numeric_limits<long>::max)();
cout << "\t最小值:" << (numeric_limits<long>::min)() << endl;
cout << "unsigned long: \t" << "所占字节数:" << sizeof(unsigned long);
cout << "\t最大值:" << (numeric_limits<unsigned long>::max)();
cout << "\t最小值:" << (numeric_limits<unsigned long>::min)() << endl;
cout << "double: \t" << "所占字节数:" << sizeof(double);
cout << "\t最大值:" << (numeric_limits<double>::max)();
cout << "\t最小值:" << (numeric_limits<double>::min)() << endl;
cout << "long double: \t" << "所占字节数:" << sizeof(long double);
cout << "\t最大值:" << (numeric_limits<long double>::max)();
cout << "\t最小值:" << (numeric_limits<long double>::min)() << endl;
cout << "float: \t\t" << "所占字节数:" << sizeof(float);
cout << "\t最大值:" << (numeric_limits<float>::max)();
cout << "\t最小值:" << (numeric_limits<float>::min)() << endl;
cout << "size_t: \t" << "所占字节数:" << sizeof(size_t);
cout << "\t最大值:" << (numeric_limits<size_t>::max)();
cout << "\t最小值:" << (numeric_limits<size_t>::min)() << endl;
cout << "string: \t" << "所占字节数:" << sizeof(string) << endl;
// << "\t最大值:" << (numeric_limits<string>::max)() << "\t最小值:" << (numeric_limits<string>::min)() << endl;
cout << "type: \t\t" << "************size**************"<< endl;
return ;
}
c c++各种类型的取值范围的更多相关文章
- GO语言学习笔记2-int类型的取值范围
相比于C/C++语言的int类型,GO语言提供了多种int类型可供选择,有int8.int16.int32.int64.int.uint8.uint16.uint32.uint64.uint. 1.i ...
- 为什么数值类型byte取值范围是(-128~127)?
在解决这个问题之前,我们先了解几个概念? 一.原码, 反码, 补码的概念 正数的反码和补码都与原码一样: 负数的反码.补码与原码不同,负数的反码:原码中除去符号位,其他的数值位取反,0变1,1变0.负 ...
- loadrunner:参数类型及其取值机制
参数类型 参数名随意取,建议取通俗易懂的名字,下面我们重点介绍一下参数的类型. ●DateTime: 很简单, 在需要输入日期/时间的地方, 可以用DateTime 类型来替代. 其属性设置也很简单, ...
- easyui radio 类型的取值和赋值方法
1.HTML 文件 <tr id="client_check1"> <th>委托人证件类型:</th> <td><input ...
- byte类型的取值为什么是-128~127
参考:https://blog.csdn.net/qq_22771739/article/details/84496115 https://blog.csdn.net/boatalways/artic ...
- 关于JAVA中Byte类型的取值范围的推论(*零为正数,-128在计算机中的表示方法...)
先看一段推理<*一切都是在8个比特位的前提下,讨论二进制的符号位,溢出等等,才有意义*> +124:0111 1100 -124:1000 0100 +125:0111 1101 -125 ...
- 为什么Java byte 类型的取值范围是-128~127 (转)
概念:负数的补码是该 数 绝 对 值 的 原 码 按 位 取 反 ,然 后 对 整个数 加 1 步骤: 1.确定byte是1个字节,也就是8位 2.最大的应该是0111 1111,因为第一位是符号位, ...
- c++中char类型的取值范围
-128~127,数字在计算机中以补码形式存储,因为正数的补码就是其本身且正数符号位置0,故最大值为01111111(一个0七个1)也就是127 而负数是对应正数值取反加一,拿最大的负数-1来说,就是 ...
- mySQL数值类型的取值范围
如下图,int最大为2145483647,手机号码应该用bigint
随机推荐
- 十二、 RAID
https://blog.51cto.com/sonlich http://note.youdao.com/noteshare?id=17083150f38dd19343f82ea6cc0e0e62& ...
- JavaWeb_(Spring框架)Spring中IoC与DI概念入门
Spring是于2003 年兴起的一个轻量级的Java 开源框架,它由Rod Johnson创建.传统J2EE应用的开发效率低,Spring作为开源的中间件,提供J2EE应用的各层的解决方案,Spri ...
- struts2方法无法映射问题:There is no Action mapped for namespace [/] and action name [m_hi] associated with context path []
使用struts的都知道,下面使用通配符定义的方式很常见,并且使用也很方便: <action name="Crud_*" class="example.Crud&q ...
- 新树莓派系统安装ROS记录
树莓派系统更新了,作为版本控的我怎么能忍住不更新系统,为了提高系统的速度,买了张170M的告诉sd卡,我要说的是,这个高速SD卡的钱花的最值得了,千万不要觉得树莓派都买了4,还要什么高速SD卡(自行车 ...
- 通过Nginx部署flask项目
用Flask开发之后,很多人,喜欢用nohup python manage.py & 这样的形式,放到后台运行,其实这样只是个发开模式,很简陋,无法支持并发,进程监控等功能.所以采用nginx ...
- 生产环境缺陷来源VS 缺陷管理响应机制
生产环境缺陷主要来源于用户反馈.版本内遗留.内部反馈和监控后台报警,具体内容包含以下途径: 1.用户反馈: ① 前台电话方式 ② 意见反馈后台 ③ 第三方平台:如微博.App Store等渠道 ...
- java 架构师思维导图
java 基础 . 理解IO.多线程.集合等基础框架.对JVM原理有一定了解. spring spring boot ibatis structs开源框架了解. 熟悉分布式系统设计和应用. 小 ...
- Linux下expdp自动备份
创建sh脚本 [oracle@localhost backup]$ vi logicbackup.sh 添加脚本内容 #!/bin/sh # ############################# ...
- 如何查看appPackage和启动appActivity
安装apk,模拟器或真机中在前台运行该应用程序,获取appPackage,即应用包名 appPackage: adb shell dumpsys activity | find "mFoc ...
- Android自定义控件之基本图形绘制
入门示例代码 在Android中Paint类就是画笔,Canvas 就是画布 对于画笔的大小,粗细,颜色,透明度都在paint类中设置,对于画出的成品,比如圆,方形,等在canvas类中的函数生成 入 ...