C中指针的大小

时间:2015-03-03 08:09:27

标签: c pointers 32bit-64bit

  1. 使用32位编译器的32位机器中C指针的大小是多少?

  2. 使用32位编译器的64位机器中C指针的大小是多少?

1 个答案:

答案 0 :(得分:6)

如果64位操作系统能够运行32位应用程序(大多数是),则机器不相关;它取决于您创建的可执行文件的类型(-m32等。)。

您可以通过编译并运行以下代码来自行回答:

#include <stdio.h>
int main(int argc, const char **argv)
{
    printf("Pointer size is %u bytes\n", (unsigned)sizeof(void *));
    return 0;
}

答案是4(32位)。