如下图所示,可以看到y的地址在传入函数并被返回后,高32位被截断了,于是发生了Segment fault。

首次是在MAC OS X上发现的,本以为是MAX OS X编译器自己的策略,后来在64位Ubuntu上测试结果一样。

究其原因,我们可以看到“assignment makes pointer from integer without a cast [-Wint-conversion]”,意思就是该函数把默认int转给地址变量了,然而不幸的是64位系统的地址不是int能装的下的。

解决问题其实很简单,只要老老实实把函数声明写到头文件(.h)里,然后在.c文件里include就可以了。

写头文件虽然是个规范性的动作,但是很多工程师图方便,尤其是在嵌入式领域,常常有些官方库文件都不带.h。于是导致一些莫名其妙的崩溃,最后自己崩溃了。

特此记录。

转载于:https://www.cnblogs.com/ansersion/p/10789635.html

gcc在64位系统上一个史诗级WARNING相关推荐

  1. 【转】将 Linux 应用程序移植到 64 位系统上

    原文网址:http://www.ibm.com/developerworks/cn/linux/l-port64.html 随着 64 位体系结构的普及,针对 64 位系统准备好您的 Linux® 软 ...

  2. 关于在64位系统上,使用APlayer,运行报错“找不到指定的模块”

    使用APlayer开发了一个C#程序,原先开发电脑是32位的,安装电脑也是32位,只需要将相应的文件打包,然后在system32文件夹中放入atl71.dll和D3DX9_43.dll,项目运转正常. ...

  3. 64位系统下一个32位的程序究竟可以申请到多少内存?

    64位系统下一个32位的程序究竟可以申请到多少内存? cpu的位是指一次性可处理的数据量是多少,1字节=8位,32位处理器可以一次性处理4个字节的数据量,依次类推.32位操作系统针对的32位的CPU设 ...

  4. win10 64位系统上注册wincc的ocx插件问题

    win10 64位系统上注册wincc的ocx插件问题 今天下载一个anigif动态图控件,注册时死活注册不了 在win10操作系统下注册OCX控件,主要有以下几个步骤: 1.以管理员的身份打开命令提 ...

  5. 修改32位的AutoCAD2012,使其能在64位系统上安装

    修改32位的AutoCAD2012,使其能在64位系统上安装 我们只需要下载AutoCAD2012的32位版,通过下面的修改就可以同时兼容32位和64位操作系统,二合一可以节省很多的硬盘开销.  1. ...

  6. hp1015驱动64位_在win10/win7 64位系统上安装 hp laserjet 1015对应的打印机驱动

    在win10/win7 64位系统上安装 hp laserjet 1015对应的打印机驱动 在win10/win7 64位系统上安装 hp laserjet 1015对应的打印机驱动 打印机是2005 ...

  7. 32位程序在64位系统上运行

    32位程序在64位系统上运行 32位系统下的MFC文件,怎么在64位的系统上面运行? 先将32位的应用程序转换为64位的应用程序. 从32位应用程序到64位应用程序 编译:starlight 这篇文章 ...

  8. 在win10/win7 64位系统上安装 hp laserjet 1015对应的打印机驱动

    背景 打印机是2005年生产的,比较老了,在win10系统上使用自带的光盘来安装驱动会显示错误. win10安装步骤 1.进入hp 官网(https://support.hp.com/cn-zh/dr ...

  9. 32位程序在64位系统上调用GetModuleFileNameEx失败

    今天客户打来电话说我们公司的服务器程序在新装的64位Windows 2003上以系统服务方式启动不起来.初步怀疑是我们的32位服务程序哪个地方在64位机上不兼容了.结果忙活了一上午,终于找到了问题所在 ...

最新文章

  1. python 让系统不识别转义字符 print的时候直接输出
  2. 正确的 send recv 行为
  3. Access导入MDB文件
  4. 框架之 hibernate之二
  5. 1/2 数据获取:本地数据的获取
  6. mysql aes_MYSQL AES加密与解密函数使用
  7. php ActiveMQ的安装与使用
  8. Rabbitmq-server-3.7.18安装完整过程
  9. 写给很累的你:面对苦难,停止内耗
  10. 计算机网络 谢希仁(第8版)第五章习题答案
  11. 深入理解LCD之寄存器配置
  12. 2020入侵防御系统(IPS)TOP10
  13. spring基础内容
  14. MQTT:QoS服务质量 0,1,2(Quality of Service 0, 1 2)
  15. 开环直流电机的机械特性_直流电机调速开环控制.docx
  16. 12.7亿入股五星电器背后,京东家电想成为线上线下“王者”
  17. 解决 Successfully created project '' on GitHub, but initial push failed: Could not read from remote
  18. [转]网易新闻客户端为什么开始在北京市区的地铁、公交站牌大批量投放广告?...
  19. 和小公主一起学习Branch and Bound
  20. Android系统 —— image文件解析

热门文章

  1. 德芙网络营销策略ppt_德芙网络营销方案
  2. CAN总线技术 | 物理层01 - CAN信号电平
  3. Android笔记-ERROR: Invalid revision: 3.17.20200511-g8787079
  4. Windows破解逆向-CrackMe_1实例(使用IDA Pro修改静态区资源)
  5. Java笔记-Java通过JNI调用Linux上so文件
  6. RabbitMQ笔记-使用rabbitmq-c实现Fair dispatch(公平分发)
  7. Linux工作笔记-使用find和grep检索文件或子文件中是否包含指定字符串
  8. 程序功能:延时(定时)
  9. matlab排序 第二条件,科学网—【MATLAB技术贴】矩阵多条件排序 - 崔健的博文
  10. 清华附2021高考成绩查询,2021年高考多少分能上清华大学?附清华大学录取分数线2020全国汇总...