二、C++

1.字节和字长

字节,八位就是一个字节,是固定概念。字长是指计算机一次能处理的二进制数据的长度,是一个非固定的概念。例如,8位计算机的字长为8,即一个字节, 32位计算机的字长位32,即4个字节,同理,64位计算机的字长为64,即8字节。

2.char类型始终是一个字节长,即8位。

3.int、short int和long int

通常int为一个字长,short为半个字长,long为一个或2个字长(在32位机器中为一个字长)。

4.浮点型float、双精度double、和长双精度long double

典型情况下,float 为一个字,double是两个字,long double为三个或四个字。

C/C++仅仅定义了这些基本数据类型之间的关系,并没有定义严格定义它们的字长。在不同的平台上,根据编译器不同的实现,它们的字长如下表所示:

数据类型

LP64

ILP64

LLP64

ILP32

LP32

char

8

8

8

8

8

short

16

16

16

16

16

_int32

N/A

32

N/A

N/A

N/A

int

32

64

32

32

16

long

64

64

32

32

32

long long

N/A

N/A

64

N/A

N/A

pointer

64

64

64

32

32

在这张表中,LP64,ILP64,LLP64是64位平台上的字长模型,ILP32和LP32是32位平台上的字长模型。

LP64意思是long和pointer是64位,ILP64指 int,long,pointer是64位,LLP指long long和pointer是32-bit的。ILP32指int,long和pointer是32位的,LP32指long和pointer是32位的。

32位Windows采用的是ILP32数据模型,64位Windows采用的是LLP64数据模型。

所以,Windows上的32位程序设计和64位程序设计最大的不同(也就是IP32和LLP64的不同),就在于指针的长度不同??由32位变成了64位。

Win32 API在很多情况下,都需要将整数转换成指针或者相反。在 32 位的硬件上不会有问题,其中指针的大小和整数的大小是相同的,但在 64 位的硬件上却完全不一样。

c oracle 32位64位,64位与32位编程的数据类型区别(C/C++)相关推荐

  1. oracle根据身份证更新出生日期(15位与18位身份证都可)

    更新出生年月sql 语句如下: update test_table a set a.csrq= case         when length(a.sfzh)=18 then to_date(sub ...

  2. 32位怎么兼容64位java_Java 32位与64位兼容

    是的,假设您使用独立于平台的库,Java字节码(和源代码)是独立于平台的. 32与64位应该没有关系. 我不小心在一个64位的虚拟机上运行我们的(大的)应用程序,而不是一个32位的虚拟机,直到一些外部 ...

  3. oracle生成42位,Oracle HowTo:如何确定Oracle是32 Bit(位)的还是64 Bit(位)的?

    Oracle HowTo:如何确定Oracle是32 Bit(位)的还是64 Bit(位)的? $ sqlplus "/ as sysdba" SQL*Plus: Release ...

  4. 32位plsql连接64位oracle

    32位plsql连接64位oracle 1.将下载好的instantclient客户端解压到安装目录的product目录下 2.复制监听文件(监听文件无需修改) 3.在instantclient文件夹 ...

  5. 64位电脑 装32位oracle,在64位Windows和64位Oracle 11g基础上安装32位ArcSDE

    64位Oracle 11g如何安装32位ArcSDE呢?以下是操作步骤: 1.安装64位Oracle 11g服务端: 2.安装32位Oracle 11g客户端,选择管理员: 3.安装ArcSDE: 4 ...

  6. oracle 10g 10.2.0.4 32位升级到64位

    32位升到64位有以下几种方法: 1.copy datafile后运行脚本升级 2.rman restore后运行脚本升级 3.通过exp/imp,expdp/impdp的transfer table ...

  7. 解决连接oracle报错 尝试加载Oracle客户端库时引发BadImageFomatException。如果在安装64位Oracle客户端组件的情况下以32位模式运行,将出现此问题的报错。

    解决连接oracle报错 尝试加载Oracle客户端库时引发BadImageFomatException.如果在安装64位Oracle客户端组件的情况下以32位模式运行,将出现此问题的报错. 参考文章 ...

  8. Oracle 10g 32位在win10 64位下安装

    一般来说64位下是可以安装32的软件的 下载安装包后解压,然后找到Oracle 10.2.0.1.0 win32\database目录下的setup.exe 右击--属性--兼容性--勾选以兼容模式运 ...

  9. python32位与62位可以随便装吗_电脑32位和64位可以随便换吗???

    展开全部 电脑32位和64位的区抄别: 1.处理能力 64位系统在技术上2113更5261先进, 突破了许多技术瓶颈4102, 在处理能力上, 64位比32位强. 2.寻址能力 位数1653通过影响硬 ...

最新文章

  1. 程序员感悟----路该怎么走
  2. 【numpy学习笔记】数组的切片,索引,迭代
  3. 在矩阵上跑最小生成树
  4. vmware workstation 8上面装vsphere5
  5. Linux目录结构介绍-http://yangrong.blog.51cto.com/6945369/1288072
  6. 请教各位 android activity之间切换的问题
  7. Linux下shell命令 1
  8. VS2012+WDK7600.16385.1 驱动环境配置(模板导出)
  9. 《软件定义数据中心:Windows Server SDDC技术与实践》——第1章 微软数据中心与SDDC漫谈1.1 微软数据中心建设之道...
  10. 国脉信息学院计算机网络,福建工程学院国脉信息学院《计算机网络模拟题》
  11. expect+shell脚本实现免密登录
  12. Java技术体系概述
  13. 工信部ICP备案管理系统滑动验证码破解
  14. 坐地铁,玩Android
  15. Java短信确认机制_JAVA 消息确认机制之 ACK 模式
  16. 华为鸿蒙麒麟巴龙鲲鹏,华为四大芯片 麒麟、巴龙、昇腾和鲲鹏“四大天王”...
  17. STM32CubeMX外部中断
  18. 水深则流缓,人贵则语迟,有悟性的人请进
  19. 又一经典音乐,不说了,你懂得
  20. 【陈工笔记】# Anaconda 虚拟环境中的简单操作指令#

热门文章

  1. 试论述计算机辅助教学的特点,浅谈计算机辅助教学特点
  2. bootstrap java web_Java web MVC(jsp,servlet,dao)+Bootstrap购物网站开发经验总结 (持续更新)...
  3. 乐山市计算机学校谭娟,乐山市计算机学校重视新闻写作培训
  4. 使用glbindbuffers产生访问冲突_预防IP地址冲突的应对方案,你知道吗?
  5. java图形界面_学习Java有什么用?Java的应用领域有哪些?
  6. MySQL回放_mysql回顾
  7. UI设计素材|社交界面模板
  8. 一流设计导航|16map|效率导航最全设计类软件!速度收藏!!
  9. 十大排序算法:冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序、堆排序、计数排序、桶排序、基数排序
  10. shell高级脚本:“秒”转换为“时-分-秒”;ping