numeric_limits参考标准库介绍:http://www.cplusplus.com/reference/limits/numeric_limits/
下面是一个小例子:
// numeric_limits example
#include <iostream> // std::cout
#include <limits> // std::numeric_limits
int main () {
std::cout << std::boolalpha;
std::cout << "Minimum value for int: " << std::numeric_limits<int>::min() << '\n';
std::cout << "Maximum value for int: " << std::numeric_limits<int>::max() << '\n';
std::cout << "int is signed: " << std::numeric_limits<int>::is_signed << '\n';
std::cout << "Non-sign bits in int: " << std::numeric_limits<int>::digits << '\n';
std::cout << "int has infinity: " << std::numeric_limits<int>::has_infinity << '\n';
return 0;
}
输出:
Minimum value for int: -2147483648
Maximum value for int: 2147483647
int is signed: true
Non-sign bits in int: 31
int has infinity: false
求下面数据类型的最大值和最小值是什么:char, short, int, long, float, double, long double, unsigned
#include <iostream>
#include <limits>
#include <climits>//可以不要,里面有<span style="font-family: Arial, Helvetica, sans-serif;">CHAR_MAX 的定义</span>
using namespace std;
int main()
{
cout << "char max = " << int(numeric_limits<char>::max()) << endl;
cout << "char min = " << int(numeric_limits<char>::min()) << endl;
//cout << "char max = " << CHAR_MAX << endl;
//cout << "char min= " << CHAR_MIN << endl;
cout << "short max = " << numeric_limits<short>::max() << en