相关疑难解决方法(0)

C++标准规定了int的大小,long类型是什么?

我正在寻找有关基本C++类型大小的详细信息.我知道这取决于架构(16位,32位,64位)和编译器.

但是有没有C++的标准?

我在32位架构上使用Visual Studio 2008.这是我得到的:

char  : 1 byte
short : 2 bytes
int   : 4 bytes
long  : 4 bytes
float : 4 bytes
double: 8 bytes
Run Code Online (Sandbox Code Playgroud)

我试图找到,但没有成功,可靠的信息,表述的大小char,short,int,long,double,float(和其他类型的我没想到的),在不同的体系结构和编译器.

c++ c++-faq

679
推荐指数
15
解决办法
120万
查看次数

sizeof void指针

为什么是sizeof无效指针2

c void-pointers

19
推荐指数
2
解决办法
5万
查看次数

4 字节的双精度指针如何指向 8 字节的双精度指针?

我有一个幼稚的问题:

double即使在 32 位机器上,A也是 8 字节long long,而且我们知道该实现的指针大小仅为 4 字节。因为这与处理器的寄存器大小有关。因此处理器寄存器必须能够寻址任何数据类型。

这是我的代码,使用编译器标志运行-m32

std::cout << "size of double: " << sizeof(double) << '\n'; // 8
std::cout << "size of double*: " << sizeof(double*) << '\n'; // 4
Run Code Online (Sandbox Code Playgroud)
  • 那么,怎样才能指针double4 Bytes指向8 Bytesdouble object)?

  • 在 64 位系统上,指针的大小是 8 字节,所以没问题。这是否意味着double在 64 位系统上比在 32 位系统上更有效?

c++ double pointers 32bit-64bit

2
推荐指数
1
解决办法
82
查看次数

标签 统计

c++ ×2

32bit-64bit ×1

c ×1

c++-faq ×1

double ×1

pointers ×1

void-pointers ×1