百科问答小站 logo
百科问答小站 font logo



c++中超出char、int范围的整数怎么存储? 第1页

  

user avatar   lu-ren-25-37 网友的相关建议: 
      

按照问题的正文,其实你要问的是。

“编程语言中如何处理过大的数字?”

就如你所说,char的容量只有256种,int16的容量只有65536种,看上去是不够用的。但这只是教科书上所举例的内容,我想只是不给你一个过大的数字造成误解。

在实际应用中,除了特殊情况,都是以32位的int起步的,范围是-2147483648~2147483647,也就是正负21亿,这足矣应付绝大多数内容了。

在日常程序中,增删查改数据、播放音视频、网络通信等等,其实都无处用到这么大的数字。如果仍需比较大的数字,则有64位int, 范围是-9223372036854775808~9223372036854775808,这天文数字就是真的用不完了。

当然,如果涉及到科学计算等场景,确实有可能需要对大数字进行计算,此时会有专门的代码来处理,比如说以文本型存储数字,然后代码来模拟每位相加。而不会要求基本类型能容纳那么大的数字。就如同为什么人民币不出1000甚至10000的面值一样,大额交易没必要用现金。


user avatar   pansz 网友的相关建议: 
      

这个问题透着一股邪乎味儿,怎么看怎么危险啊……

建议专业机构给予支援。




  

相关话题

  如何理解 C++ 中这两个结构体的大小(size)? 
  请问#define PI 3.1416比float pi=3.1416有什么优势呢? 
  有哪些好用的 C++ IDE? 
  c中struct 为什么可以在数据结构这样用? 
  在C++中,为什么部分程序员喜欢在循环中写‘++i’而不是‘i++’? 
  c中struct 为什么可以在数据结构这样用? 
  既然scanf和strcpy等函数会被编译器报不安全,那么C语言教材为什么还讲这些函数? 
  C++ 父类对象赋值给子类对象是未定义行为么? 
  如何评价"Null reference - my billion-dollar mistake"? 
  码农们最常说的「谎言」有哪些? 

前一个讨论
做自由职业者稳定月入五万好还是在大型企业(阿里、腾讯等)年收入六十万好?
下一个讨论
为什么后端喜欢把「男女」等枚举类型的数据转成 01?





© 2024-06-03 - tinynew.org. All Rights Reserved.
© 2024-06-03 - tinynew.org. 保留所有权利