首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么我在32位Mac OS X系统上看到C++中的64位指针?

在32位Mac OS X系统上,您可能会看到C++中的64位指针。这是因为在32位系统上,C++编译器默认使用32位指针,而在64位系统上,C++编译器默认使用64位指针。

如果您在32位系统上看到64位指针,可能是因为您使用了特殊的编译器选项或者在32位系统上编译了64位程序。要在32位系统上编译64位程序,您可以使用如下命令:

代码语言:txt
复制
g++ -m64 -o output_file source_file.cpp

在这个命令中,-m64选项告诉编译器生成64位程序。

需要注意的是,在32位系统上运行64位程序可能会导致一些问题,例如程序崩溃或性能下降。因此,在编译64位程序时,最好使用64位系统。

相关搜索:简单的C++写入文件在Mac OS X App中不起作用 - 为什么?(为什么是我?)在Mac OS X上启用PHP中的PostgreSQL支持在C/C++程序中,系统(windows,linux,mac OS X)如何调用main()函数为什么getopt在我的mac os中运行不正常?为什么fwrite()在Mac OS X上使用C中的"wb"写入二进制文件?尝试在Mac OS X上的Excel VBA中查询文本文件在Mac OS X 10.6上的Python中,无法在Matplotlib中将字体更改为Helvetica为什么Mac OS X上的/ usr/local/bin`中没有Python 2.7命令行工具?如何让我的基本SWT应用程序在Mac OS X 10.5.6中正常退出?为什么我在CANoe中的CAN trace上看到红色的交叉标记消息?在代码中为Mac OS X上的给定文件扩展名设置默认应用程序在mac os x上构建oracle docker映像失败,并显示“此系统不满足交换空间的最低要求”。在Win7/Mac OS X/Ubuntu文件系统上,单个文件夹中可以保存的最大文件数是多少?为什么我可以在控制台中看到x和y偏移量,但在我的网页上却看不到?为什么我的composer依赖项在docker容器中找不到,而是原生在我的mac上?为什么我无法在Mac上可视化Tkinter Python中按钮的背景颜色?为什么我不能在C++ 0x中的std :: shared_ptr的向量上执行std :: copy?为什么这段代码在我的系统上运行良好,并在HackersRank中抛出EmptyStackException在OS上的ifconfig.h的ifadder结构中,我可以将ifa_data转换为什么?我得到socket.gaierror:[Errno 8]提供的节点名和服务名,或者当我在Linux上运行它而不是在MAC os x上运行它时,它是未知的。
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

记一次在Mac系统下因为栈上变量溢出导致的内存泄露问题

栈上变量溢出导致的内存泄漏问题背景在Mac上测试TSM SDK C语言版本的SM2Encrypt接口时,遇到一个内存无法释放的问题:图片这个截图里面的意思就是说,我的程序尝试去动态释放一块堆上的内存时报错了...图片这里强调下,在Linux系统上,也是intel x86_64的cpu:os name: Linux,os release: 3.10.107-1-tlinux2_kvm_guest-0055,os...由于我们是在Mac Intel x86_64的硬件架构上进行编译和运型,x86_64是小端系统,也就是说,变量值0x01020304的排列顺序是:04 03 02 01假设SM2Encrpt中,对cipher_len...,在代码中,将%x替换为%p,代码类似于:图片之所以这里需要以%p的形式来打印指针的值,主要是希望获取到完整地址值,避免%x只取低地址位造成的地址截断,话不多说,跑代码看效果:Mac下的效果:为什么Linux下指针值只有低位地址,而Mac下却有高位地址呢?这个应该与OS内存管理的设计有关,也与OS是否开启地址随机化有关系,这块后面有时间再慢慢研究吧!

1.8K3522

CC++在Java、Android和Objective-C三大平台下实现混合编程

一、为什么使用C/C++ 便于移植,用C/C++写得库可以方便在其他的平台上再次使用。 代码的保护,由于java层代码很容易被反编译,而C/C++库反汇难度较大。...架构CPU,x86架构的手机几乎没人用(genymotion模拟器属于x86平台),所以我们通常发布APP不会考虑x86平台,仅仅添加armeabi文件即可,但是在开发过程中建议也添加x86的so文件,...以方便我们在模拟器上运行。...、引用和值 在C++中,函数可以用许多不同的方法传递参数,比如通过指针、引用或是直接传值。...其操作方式类似于数据结构中的栈; 堆(heap): 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收,分配方式倒是类似于链表。

1.2K20
  • Mac OS X 背后的故事(上)

    比如,Mac OS X 中,有一个模拟层,可让用户使用经典的 Mac OS 程序。这个技术极类似于现在跑在 Unix 系统上执行 Windows 程序的 Wine 。...比如,在老版 Mac OS 中,各种系统设置选项是隐藏在不计其数的系统扩展、控制面板,以及很多系统组件中的。...18个月转瞬即逝,“你们就是一群白痴”的骂声依旧清晰,而此时的 Mac OS X 的图形界面,已今非昔彼。 “语静声息。我走上舞台。依着那打开的门,我试图探测回声中,蕴涵着什么样的未来。”...这已经是一项很可怕的技术,而 Apple 自己一定使用它来发现并改正 Mac OS X 整个系统各层面的问题。但许多开发者还不满足——既然你能发现我漏写了 release,你为什么不能帮我自动加上呢?...这也正是为什么 FreeBSD 中包含的 GNU 的 C++ 运行库还是 2007 年以 GPLv2 发布的老版本,而不是支持C++0x 的但依 GPLv3 协议发布的新版本。

    3.1K40

    qdialog 返回值_QDialog 窗口级别模态(续)「建议收藏」

    在 Mac OS X 上就是一个 sheet。为了正确实现事件循环,当函数调用之后会立即返回。这意味着你必须通过信号槽机制来实现对返回结果的处理。...即便是在 Mac OS X 平台上,我们也不需要指定Qt::Sheet参数。open()函数是跨平台的,这意味着它能够在所有平台上都以我们所期望的方式运行。...这也许会让一些使用QFileDialog的用户感到困惑,因为在 Mac OS X 下,Qt 的QFileDialog的确是一个 sheet。...初看起来,这么做并没有什么用,但是它可以在 Mac OS X 下打开一个标准的“live feedback”对话框。这在 Qt 中相当简单。...但是,在 X11 的某些窗口管理器上,没有关闭按钮的窗口会变得很奇怪,这一点值得注意。最后,我们创建currentColorChanged()和setBrushColor()的信号槽连接。

    1.9K31

    ios开发介绍

    iOS开发概述 •什么是IOS •什么是IOS开发 •为什么要选择IOS开发 •学习IOS开发的准备 1.什么是iOS •iOS是一款由苹果公司开发的操作系统(OS是Operating System的简称...),就像平时在电脑上用的Windows XP、Windows 7,都是操作系统 •那什么是操作系统呢?...•“应用软件”就是平常我们使用的QQ、微博等软件 •用户打开某个应用软件,在软件的使用过程中,这个软件会不断地跟底层的操作系统进行交互,接着操作系统会控制硬件去做一些事情来满足用户的需求 •比如,当我们打开手机上的一个照相机软件...,按下屏幕上的拍照按钮时,照相机软件会通知操作系统“喂,我需要拍照!”...•开发工具:Xcode •电脑系统:Mac OS X •真机设备:iPhone、iPad等(可选) •iOS证书:调试证书(可选)、发布证书(可选) Mac OS X获取途径 Mac OS X是苹果公司开发的专门为苹果电脑设计的操作系统

    1.9K140

    CC++ 学习笔记六(文件系统、预处理)

    文件系统 文件是指存储在外部存储介质的数据集合(如磁盘光盘等)。操作系统中使用由文件路径和文件名两部分组成的文件标识符来标识文件。 而在C、C++语言中无论是何种文件,都将其看做是一段字节序列。...为提高计算机的运行效率,操作系统会分配一块称为文件缓冲区的内存区域,对文件的读写操作会首先在对文件缓冲区进行操作,再在适当的时机,将缓冲区的数据一次写入到外存中。...但对于不同的操作系统而言,该结构体会有所区别,所以在使用该函数进行跨平台开发时,就需要在理会其中的具体成员。...(windows 下char _ptr,mac os下unsigned char _p;) 文件指针 正是因为将文件看做一个数据块,为方便随机读写数据块的某一个区域,FILE结构体中会有一个指向文件位置的指针...-x c /dev/null ICPC -dM -E -x c++ /dev/null 宏必须使用完备的括号 再以上面为例子,当传入的x+2,sqX所得结果并不是想象中的16 ,而是8,这是因为宏展时

    1.3K00

    为什么国外的码农爱用苹果 Mac电脑?

    Mac 在国外很受欢迎,尤其是在 设计/web开发/IT 人员圈子里。普通用户喜欢 Mac 可以理解,毕竟 Mac 设计美观,简单好用,没有病毒。那么为什么专业人士也对 Mac 情有独钟呢?...从个人使用经验来看我想有下面几个原因: 1、Mac OS X 是基于 Unix 的。 这一点太重要了,尤其是对开发人员,至少对于我来说很重要,这意味着Unix 下一堆好用的工具都可以随手捡到。...作为 程序员/IT 人员一个好用的编辑器太重要了,因为写程序/改系统配置都需要编辑器。我在 Mac 上差不多1/2的时间是 browser/email,另外1/2时间差不多就是 Vi 了。...用了5年多的 Mac 就没看到病毒长成什么样,我还看不到 Mac 上装杀毒软件的需要。 ? 5、不需要维护。 Mac 买来就直接用,磁盘碎片整理?不需要。装驱动?Mac 装好了,驱动就好了。重装系统?...我5年没有重装过一次(期间换了几次不同的 Mac)。 6、简洁。 Mac 上所有的操作都简洁到了极致,尽量避免干扰用户,增加了程序员的生产力。

    4.4K90

    计算机基础系列:源代码如何被计算机执行

    Python等编程语言上手快,开源软件多,足以应付绝大多数的需求。在计算机软硬件体系中,上述工作都是在最顶层,用户执行程序需要依赖于计算机硬件和系统软件。...我在我的Mac上编写了一个名为plus的c = a + b程序,其二进制和汇编代码如下所示: ➜  objdump -s plus plus:   file format Mach-O 64-bit ...首行的file format Mach-O 64-bit x86-64表示这是一个可以运行在64位x86架构的处理器上、基于Mac OS的一段程序。...了解了编译知识,就不难明白为什么很多软件提供商对同一个软件会提供Windows、Mac OS、Linux、iOS、Android等多个版本的下载。...因为不同平台的硬件、编译器和操作系统存在着巨大差异,可执行文件完全不同。所以,也就不难理解Windows软件为什么不可能在Mac OS上运行。 实际构建一个大型项目时,编译要考虑的问题会更多。

    1.5K10

    码农的瑞士军刀-脚本语言

    这是一个excel调用的例子,实际编写的时候,我们可以在交互式环境下一行行输入执行,然后实时看到excel的实时变化。最后把正确的脚本记录下来就行了。...你写的脚本可能基本不需要修改,就可以在另外一个平台上直接执行。 另外,越来越多的系统提供脚本语言的wrapper。如果你能够熟练使用脚本语言,在学习新系统的时候,就占了大便宜。...脚本语言的选择 下面讲一下当年我为什么会选择python,供大家了解如何选择脚本。其他语言也有各自的优点。...我有一个朋友工作中matlab是必备的,因此,就用matlab的m当作日常的脚本,同样效果很好。 我的工作中主要语言是C++,平时想做点小工具真的觉得很痛苦。...面向过程,嵌入在页面中 Ruby 有一个漂亮的杀手级应用Rails, 高效的Web开发架构,结果也造成语言的发展基本上也只适合web开发。

    1.2K100

    MacBook Pro 为什么值得我写一篇博文——程序猿使用感悟

    由于自己想在研究生阶段对自己的技术进行系统的提升,所以希望能够在宿舍与实验室都可以方便的移动学习,在保证一定性能的基础长,便携性也是我主要考略的,所以倾向于购买X系列。...,毕竟我也看到过N篇程序员为什么用Mac的文章,也一直很想拥有一台属于自己的 Mac 。...编程环境:Java、Python、Ruby、Apache...在系统内都已经安装好了,这对于一个程序员来说是省了不少事儿。 3. 为什么说外国『程序猿』喜欢用Mac ?...从论坛看到一个帖子详述了下面几个原因: 1、Mac OS X 是基于 Unix 的。这一点太重要了,尤其是对开发人员,至少对于我来说很重要,这意味着Unix 下一堆好用的工具都可以随手捡到。...作为 程序员/IT 人员一个好用的编辑器太重要了,因为写程序/改系统配置都需要编辑器。我在 Mac 上差不多1/2的时间是 browser/email,另外1/2时间差不多就是 Vi 了。

    21.2K41

    你已经是个成熟的985大学了,请不要在大一教 C 语言!

    之前在知乎看见一个问题,问为什么还有985高校给大一上 C 语言课,如下: ? 原问题 不过这个提问方式未免有引战嫌疑,所以被知乎管理员编辑为如下问题: ?...现问题 这样显然中立很多了,是在摆事实提问题。 接下来我们就聊聊 985 大学为什么还是给大一上 C 语言课。 一、为什么要学 C 语言?...我在那篇文章中说 C 语言是最适合用来理解计算机系统底层机制的语言,那今天就详细说说,这些底层机制都有哪些: 内存 一名合格的程序员必须了解内存,学习 C 语言是了解内存布局最直接、有效的途径,大家可以看到之前讲解指针那篇文章...所以 Linux 系统编程对于深入学习编程一定是绕不开(因为很多服务端程序都是运行在Linux上的,所以忽略了Win/Mac 而这是 C 语言的世界: ?...这里不是在否定其它非 C 程序员就没技术,实际上我本身也不写 C,我只是想表达如果你想学习底层机制、操作系统等,请学习 C 语言。

    1.2K20

    从本质到实现,谈谈什么是 C 和 C ++ 标准库?

    我已经接触C++一段时间了,一开始就让我感到疑惑的是其内部结构:我所使用的内核函数和类从何而来? 谁发明了它们? 他们是打包在我系统中的某个地方吗? 是否存在一份官方的C ++手册?...Mac和iOS版实现 在Mac和iOS上,C标准库的实现是libSystem的一部分,libSystem是位于/usr/lib/libSystem.dylib中的核心库。...关于C++标准库,在OS X Mavericks(V10.9)之前的Mac上,libstdc++是默认选项。这在现代的基于Linux的系统上可以找到的同样的实现。...自OS X Mavericks开始,Apple切换到使用libc++,这是LLVM项目——Mac官方编译器框架——所引入的GNU libstdc++标准库的替代。...在 C++ 端, NDK提供了很多版本的实现: libc++,从从Lollipop开始的官方安卓系统和现代Mac操作系统都将其作为C++标准库使用。

    1.2K70

    什么是 C 和 C ++ 标准库?

    我已经接触C++一段时间了,一开始就让我感到疑惑的是其内部结构:我所使用的内核函数和类从何而来? 谁发明了它们? 他们是打包在我系统中的某个地方吗? 是否存在一份官方的C ++手册?...Mac和iOS版实现 在Mac和iOS上,C标准库的实现是libSystem的一部分,libSystem是位于/usr/lib/libSystem.dylib中的核心库。...关于C++标准库,在OS X Mavericks(V10.9)之前的Mac上,libstdc++是默认选项。这在现代的基于Linux的系统上可以找到的同样的实现。...自OS X Mavericks开始,Apple切换到使用libc++,这是LLVM项目——Mac官方编译器框架——所引入的GNU libstdc++标准库的替代。...在 C++ 端, NDK提供了很多版本的实现: libc++,从从Lollipop开始的官方安卓系统和现代Mac操作系统都将其作为C++标准库使用。

    2.1K30

    曾经是“杀手级”桌面语言,Java桌面开发为何走向衰落?

    而且在编译了代码路径之后,“理论上”它的运行速度可以追平甚至超越 C++。但我们这帮学生根本不买账,单纯觉得他们是在嘴硬。...虽然我还没有在项目中实际使用过 SWT,但很高兴看到它能经受住这么多年的风雨考验。...Java Cocoa 应用 还是在 2000 年初,苹果突然宣布要把 Java 作为 Mac OS X 上的首选编程语言。...Java 被预装在 OS X 当中,Swing 也获得了本机 Mac 主题,使其观感高度接近于本机应用程序。...我讲述的是自己在 Java 桌面环境上的真实经历,而且主要偏向 Mac 一侧(因为家里的第一台计算机是苹果 IIGS,我爸后来又买了台 Mac Classic)。

    1.7K20

    cc++补完计划(六): 语法糖lambda

    前言 很多语言都有lambda, c++自然不能缺, 在c++11里面加入了, 是程序猿喜欢的语法糖, 便于阅读, 也便于理解. 当然, 它有很多相关概念, 这里尽可能展开说....lambda表达式 [capture list] (params list) mutable exception-> return type { function body } 捕获子句(在c++规范中也称为...: 1 6 7 x是值传递, y, z是引用传递, 值传递实际上是不能修改的, 但是这里加了mutable, 所以可以在函数体内进行改动....function 然后你会发现一个问题, 我这里写的都是auto, 那具体是什么呢?...我的话, 怎么简洁怎么用. ref简单说下, 主要是有些变量不支持值传递, bind这里就要写成ref(os). 最后 真的是很实用的点, 让c++灵活了很多.

    57320

    太惨!学Python方法用错,直接从入门到放弃!

    这似乎不合乎常理,因为在印象中很少有人提及Python,反而经常听大家谈起C、C++、Java、C#和PHP,Python语言为什么这么火呢?...Mac OS(包括OS X和Classic)。 BeOS、OS/2、VMS和QNX。 实时操作系统,例如VxWorks。 Cray超级计算机和IBM大型机。...1.2.1 选择版本 因为Python语言是跨平台的,可以运行在Windows、Mac OS、Linux、UNIX和各种其他系统上,所以说Python可以安装在这些系统中。...并且在Windows上写的Python程序,可以放到Linux系统上运行。 到目前为止,Python最为常用的版本有两个:一个是2.x版,一个是3.x版。...图1-7 表示安装成功 1.2.3 在Mac系统中下载并安装Python 在Mac OS X中都已经默认安装了Python,开发者只需要安装一个文本编辑器来编写Python程序即可,并且需要确保其配置信息正确无误

    2.1K20

    ​​软件开发入门教程网之​​C++ 信号处理

    信号是由操作系统传给进程的中断,会提早终止一个程序。在 UNIX、LINUX、Mac OS X 或 Windows 系统上,可以通过按 Ctrl+C 产生中断。...有些信号不能被程序捕获,但是下表所列信号可以在程序中捕获,并可以基于信号采取适当的动作。这些信号是定义在 C++ 头文件 中。...SIGTERM发送到程序的终止请求。​​signal() 函数​​C++ 信号处理库提供了 signal 函数,用来捕获突发事件。...signal, signal handler)这个函数接收两个参数:第一个参数是一个整数,代表了信号的编号;第二个参数是一个指向信号处理函数的指针。...让我们编写一个简单的 C++ 程序,使用 signal() 函数捕获 SIGINT 信号。不管您想在程序中捕获什么信号,您都必须使用 signal 函数来注册信号,并将其与信号处理程序相关联。

    69940
    领券