INT_PTR 更好的移植性
不知道是从哪个版本的SDK开始,微软引入了一个新的类型——INT_PTR(其实也就是typedef了一把)。看下面的定义就知道了。
#if defined(_WIN64)
typedef __int64 INT_PTR, *PINT_PTR;
typedef unsigned __int64 UINT_PTR, *PUINT_PTR;
typedef __int64 LONG_PTR, *PLONG_PTR;
typedef unsigned __int64 ULONG_PTR, *PULONG_PTR;
#define __int3264 __int64
#else
typedef _W64 int INT_PTR, *PINT_PTR;
typedef _W64 unsigned int UINT_PTR, *PUINT_PTR;
typedef _W64 long LONG_PTR, *PLONG_PTR;
typedef _W64 unsigned long ULONG_PTR, *PULONG_PTR;
#define __int3264 __int32
#endif
众所周知,在32位操作系统里,一个int是4个字节。64位操作系统上,一个int是8个字节。指针的大小也是同样。所以用INT_PTR代替int理论上可以让代码具有更好的移植性,当然也让代码看起来更专业:)
INT_PTR 更好的移植性相关推荐
- FPGA之道(72)提高设计的综合性能(四)提高设计的移植性与保密性
文章目录 前言 提高设计的移植性 保持良好的代码风格 按照硬件依赖性区分代码 少使用专有IP核 提高设计的保密性 动态配置参数法 采用具有保密性的技术 前言 本文节选自<FPGA之道>. ...
- Nature封面:大团队日趋中庸,小团队更容易出颠覆性创新
全世界只有3.14 % 的人关注了 数据与算法之美 [导读] 现代科学研究团队的规模越来越大,一般认为,大团队往往有着更充足的经费支持和多样化的研究人员,更有利于科学创新.但近日Nature发表封面文 ...
- 利用Linux的强大移植性和兼容性将操作系统轻松安装到硬盘
Linux的强大移植性和兼容性将操作系统轻松安装到硬盘先前在http://dgd2010.blog.51cto.com/1539422/392310写过一篇文章,<创新性试验:我的第一次实现Li ...
- Win知识 - 程序是怎样跑起来的——系统调用和高级编程语言的移植性
操作系统的硬件控制功能,通常是通过一些小的函数集合体的形式来提供的.这些函数及调用函数的行为统称为系统调用(system call),也就是应用对操作系统(system)的功能进行调用(call)的意 ...
- 操作系统的重要性及系统调用和编程语言的移植性
目录 一.操作系统的重要性 二.系统调用和编程语言的移植性 一.操作系统的重要性 对于程序员来说,程序员创造的不是硬件,而是各种应用程序,但是如果程序员只做应用不懂硬件层面的知识的话,是无法成为硬核程 ...
- STM32贪吃蛇(流畅,高移植性)
目录 一.一些前言: 二.完整代码 2.2.snake.c 2.3.中断处理 2.4.startup 三.后言 一.一些前言: 自己用2.4寸TFTSPI的屏写了个贪吃蛇,蛇行走画面流畅,不会有一顿一 ...
- java的移植性_详细介绍JAVA的可移植性
软件可移植性指与软件从某一环境转移到另一环境下的难易程度.为获得较高的可移植性,在设计过程中常采用通用的程序设计语言和运行支撑环境.尽量不用与系统的底层相关性强的语言.下面介绍JAVA的可移植性. 1 ...
- python特性高移植性_Python特性图文盘点|微胜教育《九大编程语言全解析》系列...
原标题:Python特性图文盘点|微胜教育<九大编程语言全解析>系列 又到了每周<九大编程语言全解析>的时候了,小伙伴们五一马上到了,想好去哪浪了吗? 今天我们盘Pytho ...
- python特性高移植性_用户选择使用Python的原因有哪些
如今有众多可选的编程语言,这往往是入门者首先要面对的问题.开发工具的选择有时取决于特定的约束条件或者个人喜好. 过去的16年中对近260个团体组织和4000名学生的Python培训过程,让我见证了人们 ...
最新文章
- php sqlite3菜鸟,SQLite Update 语句
- Vue.js 技术揭秘学习 (1) new Vue 发生了什么
- NAB 2019见闻:CAE视频编码与QoE
- win7 VS2013 新建工程 编译lua5.2.0 静态库
- 安卓Queue的使用
- LeetCode String Compression
- Python 模块之 string.py
- js中apply和join
- 【spring容器启动】之bean的实例化和初始化(文末附:spring循环依赖原理)
- 如何提取多层json数据 python_Postgre数据库字段Json内容提取(基于Python)
- 如何使用Tipard 3D Converter转换2D视频格式
- HTTP协议【详解】——经典面试题
- 图形化操作工具DIGITS 6.1的安装与运行
- Python爬虫——5-2.使用selenium和phantomjs模拟QQ空间登录
- PPT 2010如何添加背景音乐
- linux下kegg注释软件,网页工具KOBAS进行KEGG富集分析
- socket 10106问题解决日记
- 接口测试+自动化接口测试详解入门到精通
- 个人博客园样式、背景及细节美化过程
- 以前写的一些老的验证脚本