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



现在 c++中 long 整数类型还有使用的意义吗? 第1页

  

user avatar   pansz 网友的相关建议: 
      

其实没有啥用处。即便 long long 这个类型也是不建议使用的。

他们在特定平台上用于定义 int8, int16, int32, int64 ,size_t, uint8/16/32/64 , ptrdiff 等其它整数类型,他们的用途应当仅限于 typedef,自身不被单独使用

  • 如果你不在乎具体尺寸,只希望选择当前平台最合适的类型,那么用 int (其实用 auto 更好)。
  • 如果你需要在乎具体尺寸,那么选择 int8, int16, int32, int64 _t 这一族类型更合适。
  • short是一个「小于等于int但不能确定究竟是多大」的类型,long是一个「大于等于int但也不能确定究竟是多大」的类型,long long 则是一个「大于等于long但也同样不能确定是多大」的类型。这三个类型在实际场合除了作为定义 int6, int16, int32, int64 等类型的 typedef 原胚以外,并不应该在其它场合使用

如果你需要一个整数用于存放指针,则应该使用 ptrdiff_t 或者 size_t 类型。这两个类型是保证一定能存放一个指针的。




  

相关话题

  既然有 memcpy_s 这种安全实现,为啥不禁用危险的 memcpy 或者更新 memcpy 源码? 
  libc++ 与 libstdc++ 是什么关系? 
  如何实现 C/C++ 与 Python 的通信? 
  为什么世界上大多数地方的人习惯用逗号表示小数点,而C++却用圆点表示小数点,而不是按照大多数地方习惯? 
  一个即将步入大学对编程感兴趣的学生,3 年能将 Java 学到什么程度,应怎样合理分配这 3 年? 
  C 语言中指针数组和数组指针、函数指针、指向函数的指针等等该怎么理解? 
  大括号不换行的坏处有什么?为什么有人不换行? 
  能否仅依靠机械(不包括电路)实现可编程图灵完备的通用计算机? 
  为什么C++中,含有函数声明的头文件应该被包含在定义函数的源文件中? 
  C 语言中不同类型指针的大小是否完全相同,为什么? 

前一个讨论
网关和路由器的区别是什么?
下一个讨论
我是程序员,不想加班了,现在哪些国家的程序员不加班也不要求英语?





© 2025-03-31 - tinynew.org. All Rights Reserved.
© 2025-03-31 - tinynew.org. 保留所有权利