博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
编译器定义的C/C++语言各种基本数据类型的取值范围
阅读量:7014 次
发布时间:2019-06-28

本文共 2011 字,大约阅读时间需要 6 分钟。

貌似有些编译器并不完全支持所有数据类型,运行结果可能也有差异,依编译器而异,但是获得方式都是一样的

#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 
0
}

  运行结果如下:

char类型的变量存储值从-128到127

unsigned char类型的变量存储值从0到255

short类型的变量存储值从-32768到32767
unsigned short类型的变量存储值从0到65535
int类型的变量存储值从-2147483648到2147483647
unsigned int类型的变量存储值从0到4294967295
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位精度的小数位数

博主ma6174对本博客文章(除转载的)享有版权,未经许可不得用于商业用途。转载请注明出处

对文章有啥看法或建议,可以评论或发电子邮件到ma6174@163.com


本文转自ma6174博客园博客,原文链接:http://www.cnblogs.com/ma6174/archive/2012/02/04/2337958.html
,如需转载请自行联系原作者
你可能感兴趣的文章
Win10 64bit GTX950 Anaconda3 环境下安装配置TensorFlow
查看>>
【EASYDOM系列教程】之复制节点
查看>>
React 服务端渲染如此轻松 从零开始构建前后端应用
查看>>
gradle 打包不同资源
查看>>
react-native创建android原生模块
查看>>
分享一个基于Node的名片设计网站
查看>>
Express + Ejs实现一个简单的WebServer
查看>>
40 行代码内实现一个 React.js
查看>>
关于5G被激烈讨论的那些争端和冲突
查看>>
AlphaZero进化论:从零开始,制霸所有棋类游戏
查看>>
.NET仓储模式高级用例
查看>>
如何理解 Laravel 的 Ioc 容器
查看>>
代码艺术家之JS
查看>>
Microsoft Azure Site Recovery (2) 配置虚拟机保护
查看>>
具有邮件功能的用户和联系人有什么区别?-Exchange2003系列之八
查看>>
ORACLE学习笔记--性能优化4
查看>>
毕啸南专栏 | 对话李开复:AI科学家的转型之路
查看>>
iphone: 可编辑的tableView Move&Delete
查看>>
linux shell “(())” 双括号运算符使用
查看>>
Asp.net Ajax Accordion控件的用法
查看>>