C 特定于系统的数据类型的最大大小
我试图找出C数据类型的最小值和最大值,比如short、int和long 我在维基百科的一篇文章中找到了最小尺寸,但我不知道如何找到我电脑的最大尺寸 我有一台MacOSX10.8C 特定于系统的数据类型的最大大小,c,C,我试图找出C数据类型的最小值和最大值,比如short、int和long 我在维基百科的一篇文章中找到了最小尺寸,但我不知道如何找到我电脑的最大尺寸 我有一台MacOSX10.8 谢谢 使用头文件中的宏。使用头文件中的宏。您可以使用中定义的{TYPE}[MIN | MAX]宏检查类型范围: printf("range of short int: %d - %d", SHRT_MIN, SHRT_MAX); 您可以使用sizeof运算符检查类型大小: printf("size of short i
谢谢 使用头文件中的宏。使用头文件中的宏。您可以使用中定义的
{TYPE}[MIN | MAX]
宏检查类型范围:
printf("range of short int: %d - %d", SHRT_MIN, SHRT_MAX);
您可以使用sizeof
运算符检查类型大小:
printf("size of short int: %zu", sizeof(short int));
编辑:
还可以检查@JoachimPileborg answer,因为他提供了一个更好的限制参考。您可以使用中定义的
{TYPE}}[MIN | MAX]
宏检查类型范围:
printf("range of short int: %d - %d", SHRT_MIN, SHRT_MAX);
您可以使用sizeof
运算符检查类型大小:
printf("size of short int: %zu", sizeof(short int));
编辑:
同时检查@JoachimPileborg answer,因为他提供了更好的限制参考。标题将是您的朋友。您需要它的值SHRT_MIN、SHRT_MAX、INT_MIN、INT_MAX、LONG_MIN、LONG_MAX。我相信他们的名字是自描述性的。标题将是您在这里的朋友。您需要它的值SHRT_MIN、SHRT_MAX、INT_MIN、INT_MAX、LONG_MIN、LONG_MAX。我相信他们的名字是自描述性的。有以下限制
#include <limits.h>
#包括
限制包括以下内容
#include <limits.h>
#包括
您可以使用limit.h和float.h中定义的常数:
(在internet上快速搜索列表)
您可以使用limit.h和float.h中定义的常数: (在internet上快速搜索列表)
sizeof
返回类型为size\t
的值,您应该使用%zu
而不是%d
@AlexeyFrunze您完全正确,我已经修复了我的答案。您知道为什么printf(“长int的范围:%I-%I\n”,长MIN,长MAX);给我一个长整数的范围:0--1@papercuts使用%ld
表示long
和%lu
表示无符号long
<代码>%i代表int
。哦,好的,谢谢!这很有帮助sizeof
返回类型为size\t
的值,您应该使用%zu
而不是%d
@AlexeyFrunze您完全正确,我已经修复了我的答案。您知道为什么printf(“长int的范围:%I-%I\n”,长MIN,长MAX);给我一个长整数的范围:0--1@papercuts使用%ld
表示long
和%lu
表示无符号long
<代码>%i代表int
。哦,好的,谢谢!那很有帮助