unsigned long long有多少字节
How many bytes is unsigned long long?
unsigned long long
有多少字节?是否与unsigned long long int
相同?
执行摘要:64位或更大。
unsigned long long
与unsigned long long int
相同。它的大小与平台有关,但由C标准(ISO C99)保证至少为64位。C89中没有long long
,但显然MSVC也支持它,所以它是相当可移植的。
在当前的c++标准(2003年发布)中,没有long long
,尽管许多编译器将其作为扩展支持。即将到来的c++ 0x标准将支持它,其大小将与C中相同,因此至少为64位。
您可以使用表达式sizeof(unsigned long long)
获得确切的大小,以字节为单位(典型平台上为8位)。如果你想要64位,使用uint64_t
,它是在头文件<stdint.h>
中定义的,还有一堆相关的类型(在C99、c++ 11和一些当前的c++编译器中可用)。
c++的美妙之处在于,这些东西的大小是由实现定义的,所以如果不指定使用的编译器,就没有正确的答案。这两个是一样的吗?是的。"long long"是"long long int"的同义词,对于任何可以同时接受两者的编译器来说。
至少64位。除此之外,它是实现定义的。
严格地说,unsigned long long
直到c++ 0x标准才成为c++的标准。unsigned long long
是unsigned long long int
类型的"简单类型说明符"(因此它们是同义词)。
long long
类型集也在C99中,甚至在标准化之前就是c++编译器的常见扩展。
使用sizeof
运算符,它将给出以字节表示的类型的大小。一个字节是八个比特。请看下面的程序:
#include <iostream>
int main(int,char**)
{
std::cout << "unsigned long long " << sizeof(unsigned long long) << "n";
std::cout << "unsigned long long int " << sizeof(unsigned long long int) << "n";
return 0;
}
相关文章:
- 从不同线程使用int64的不同字节安全吗
- 将Integer转换为4字节的unsined字符矢量(按大端字节顺序)
- 在UNIX系统中使用DIR查找文件的字节大小
- 如何在 C 中正确使用 libiconv 使其不会报告"Arg list too long"?
- 不能在初始值设定项列表中将非常量表达式从类型 'int' 缩小到'unsigned long long'
- 如何使用Crypto++并为RSA返回可打印的字节/字符数组
- 在C++中使用GDAL可以将图像的像素坐标转换为lat,long吗
- std::当在256字节边界上写入整数时,流的奇怪行为
- 当比特(而不是字节)的顺序至关重要时的持久性
- 从文件中读取多个字节,并将它们存储在C++中进行比较
- 如何在文件中查找字节序列
- luaL_dofile在已知良好的字节码上失败,可以使用未编译的版本
- 字节到位运算符重载C++
- 在java中读取c++字节的位字段
- <Windows>为什么 std::thread::native_handle 返回类型为"long long unsigned int"的值,而不是 void*(又名 HANDLE)?
- 使用 std::vector::reverse_iterator 将 int 序列化为字节向量?
- 字节真的是最小可寻址单元吗
- struct.error:解压缩 C++ 结构时,解包需要 288 字节的缓冲区
- 读取文件中所有可能的十六进制 16 字节序列并打印每个序列
- unsigned long long有多少字节