貌似有些编译器并不完全支持所有数据类型,运行结果可能也有差异,依编译器而异,但是获得方式都是一样的
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
#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;
}
|
运行结果为
本文转自 七十七快 51CTO博客,原文链接:http://blog.51cto.com/10324228/1703360