需要 int 中的最大值
need of maximum value in int
我刚开始用 c 编程,我知道 python 的一些基础知识,所以当我在 python 中为变量设置一个非常大的 int 值时,说“58944651132156484651”并打印变量,一切都会很好,但是当我对 c 做同样的事情时,答案将是 247..... 搜索后我发现这是 c 中的最大可能值,我明白了一切,但谁能告诉我这需要什么没有这个最大值一切都工作正常,这个最大值会出现很多问题,比如我无法将我的 phone 数字设置为变量等等,所以请帮助我解决这个问题。记得我是一个 python 用户,现在我正在学习 c.
/*code in c*/
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num = 456465465456456465465456;
printf("%d \n", num);
return 0;
}
#code in python
num = 54454564564848431284132116483211
print(num)
#that's better than the c's big print :(
为了Python支持没有固定限制的整数,它必须包含很多管理数据的软件。因为没有固定大小,Python 必须支持其整数对象的可变长度。这意味着它必须跟踪这些长度,它必须为它们分配和释放可变数量的内存,并且它必须有对它们执行复合算术运算的例程。这很慢而且相对昂贵。
C 的主要设计目的是提供对计算机的更直接访问。它提供基本操作,让程序员自行构建更复杂的功能或将其操作限制在计算机的自然范围内。总的来说,在 C 中将两个数字相加或相乘是通过一条简单的处理器指令实现的,而 Python 即使是相同的值也可能需要数十条指令。
这意味着 C 中 int
的最大值很大程度上取决于计算机处理器在其操作中提供的内容。你问限制大小的“需要”是什么:需要只是一个int
的最大值是在不使用额外的指令或资源来表示更大的值的情况下可以支持的最大值。
你还应该知道 C 没有指定 int
的最大值是 2,147,483,647。 C 被设计为灵活和可移植的,int
的最大值因 C 实现而异。它至少是 32,767。 2,147,483,647 现在很常见,但其他值也是允许的。
我刚开始用 c 编程,我知道 python 的一些基础知识,所以当我在 python 中为变量设置一个非常大的 int 值时,说“58944651132156484651”并打印变量,一切都会很好,但是当我对 c 做同样的事情时,答案将是 247..... 搜索后我发现这是 c 中的最大可能值,我明白了一切,但谁能告诉我这需要什么没有这个最大值一切都工作正常,这个最大值会出现很多问题,比如我无法将我的 phone 数字设置为变量等等,所以请帮助我解决这个问题。记得我是一个 python 用户,现在我正在学习 c.
/*code in c*/
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num = 456465465456456465465456;
printf("%d \n", num);
return 0;
}
#code in python
num = 54454564564848431284132116483211
print(num)
#that's better than the c's big print :(
为了Python支持没有固定限制的整数,它必须包含很多管理数据的软件。因为没有固定大小,Python 必须支持其整数对象的可变长度。这意味着它必须跟踪这些长度,它必须为它们分配和释放可变数量的内存,并且它必须有对它们执行复合算术运算的例程。这很慢而且相对昂贵。
C 的主要设计目的是提供对计算机的更直接访问。它提供基本操作,让程序员自行构建更复杂的功能或将其操作限制在计算机的自然范围内。总的来说,在 C 中将两个数字相加或相乘是通过一条简单的处理器指令实现的,而 Python 即使是相同的值也可能需要数十条指令。
这意味着 C 中 int
的最大值很大程度上取决于计算机处理器在其操作中提供的内容。你问限制大小的“需要”是什么:需要只是一个int
的最大值是在不使用额外的指令或资源来表示更大的值的情况下可以支持的最大值。
你还应该知道 C 没有指定 int
的最大值是 2,147,483,647。 C 被设计为灵活和可移植的,int
的最大值因 C 实现而异。它至少是 32,767。 2,147,483,647 现在很常见,但其他值也是允许的。