繁体   English   中英

使用cygwin在64位Windows上C ++中的int指针大小

[英]Size of int pointer in C++ on 64 bit windows using cygwin

我试图在64位Windows 7计算机上打印int指针的大小。 我正在使用cygwin。 我希望它给出输出8,但实际输出是4。

#include <iostream>
using namespace std;

int main()
{
    cout<< sizeof(int*)<<endl;
    return 0;
}

可能相关的问题C ++中64位计算机的指针大小是多少?

但这是关于在Visual Studio中编译为64位项目。 我在cygwin中找不到任何这样的选项。 如何解释?

机器或操作系统的“位数”无关紧要。 没什么区别。

唯一重要的是您要求编译器生成什么样的代码。 在实验中,您要么要求GCC生成32位代码,要么它本身默认为32位代码。 这就是为什么指针为32位宽的原因。

如果要查看64位指针,则必须明确要求GCC生成64位代码。 在编译器的命令行中指定-m64

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM