此文章为网上相关内容的小总结

首先是字(word)的定义:由若干个字节构成,字的位数叫做字长,不同档次的机器有不同的字长,它是计算机进行数据处理和运算的单位,也就是 CPU 一次能处理的二进制代码的长度,即CPU一次所能处理的二进制代码的位数,也就是CPU的地址线的个数,即CPU的位宽。我们平时说的32位处理器,64位处理器中的 32、64 就是对应处理器的字长。

各类型的数据长度是由编译器决定的: 发现数据类型占内存的位数实际上与操作系统的位数和编译器(不同编译器支持的位数可能有所不同)都有关,具体某种数据类型占字节数得编译器根据操作系统位数两者之间进行协调好后分配内存大小。具体在使用的时候如想知道具体占内存的位数通过sizeof(int)可以得到准确的答案。

在这里以int与char典型的变量类型举例,他们作为指针时,数据长度相同,但受处理器位宽影响,会有所不同

在32位处理器 char为1字节 *char为4字节 int为4字节 *int为4字节
在64位处理器 char为1字节 *char为8字节 int为4字节 *int为8字节

在各种变量类型指针+1的问题上

首先在定义一个变量并赋值时,编译器会给此变量自动分配内存地址,栈区进行入栈操作,全局区在相应的地址上进行存储数据。
那么指针会指向一个地址,指针变量加1,即向后移动1 个位置表示指针变量指向下一个数据元素的首地址。但是这将移动多少位地址,这跟变量的类型有关
   例如64位处理器中
   int类型为4字节 对应的指针+1将移动4字节
   char类型为1字节 对应的指针+1将移动1字节
   以此类推,可以知道不同类型指针+1的区别。

32位/64位处理器:*char与*int的区别?不同类型的指针+1的区别?相关推荐

  1. 32和64位系统各内置类型所占字节大小(int char long double 指针等)

    指针大小不一样主要原因在于:32位的寻址空间是2^32, 即32个bit,也就是4个字节.同理64位编译器 32/64位操作系统,数据类型字节数对比 32/64位操作系统,数据类型字节数对比 32位 ...

  2. C语言入门经典——基础知识(数据类型)(32位与64位系统基本数据类型的字节数)

    一.读取数据的格式说明符                                                  除此之外:     sizeof(char) =   1          ...

  3. 32位与64位系统基本数据类型的字节数

    32位与64位系统数据类型 不同的平台上对不同的数据类型分配的字节数是不同的,一般的,数据类型的字节数是由编辑器决定的(编译期间决定数据类型长度). 简单来说,平台就是CPU+OS+Compiler, ...

  4. 32位与64位下各类型长度对比

    64 位的优点:64 位的应用程序可以直接访问 4EB 的内存和文件大小最大达到4 EB(2 的 63 次幂):可以访问大型数据库.本文介绍的是64位下C语言开发程序注意事项. 1. 32 位和 64 ...

  5. linux内核学习之三:linux中的32位与64位

    linux内核学习之三:linux中的"32位"与"64位" 在通用PC领域,不论是windows还是linux界,我们都会经常听到"32位" ...

  6. VS系列编译器内部调用malab(32位/64位)函数指南

    最近项目用到绘制3D图形,使用了许多开源库没有得到理想的效果,后来想到可以使用matlab软件绘制图形通过MFC项目工程进行调用.   有了这个想法后,便在网上搜索相关的资料,实际调用matlab生成 ...

  7. 32位与64位机器下各数据类型长度对比

    64 位的优点:64 位的应用程序可以直接访问 4EB 的内存和文件大小最大达到4 EB(2 的 63 次幂):可以访问大型数据库.本文介绍的是64位下C语言开发程序注意事项. 1 32 位和 64 ...

  8. INF文件详解(32位64位兼容INF)

    INF文件格式要求 一个INF文件是以段组织的简单的文本文件.一些段油系统定义(System-Defined)的名称,而另一些段由INF文件的编写者命名.每个段包含特定的条目和命名,这些命名用于引用I ...

  9. 【C#】C#中使用GDAL3(一):Windows下超详细编译C#版GDAL3.3.0(VS2015+.NET 4+32位/64位)

    转载请注明原文地址:https://www.cnblogs.com/litou/p/15004877.html 总目录 (一)Windows下超详细编译C#版GDAL3.3.0(VS2015+.NET ...

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

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

最新文章

  1. 可以装在手机里的3D姿态估计,模型尺寸仅同类1/7,平均关节位置误差却只有5厘米 | CPVR 2021...
  2. 安卓开发 fastjson 解析json使用详解
  3. SCPPO(二十九):测算过程中问题的解决总结(续)
  4. 在Oracle中查询表的大小、表的占用情况和表空间的大小
  5. Ubuntu 16.04 解决RTL8111/8168/8411网卡有线连接网速慢的问题
  6. 如何在中国大陆三大运营商申请公网IPV4地址
  7. 网站SEO提升关键词排名的六个步骤
  8. GitHub 配置SSH Key
  9. Rockchip | Rockchip固件升级工具
  10. 云风的个人空间 : 《代码大全》读书笔记
  11. 内蒙古大学计算机学院保研到哪些学校,关于2021年推荐优秀应届本科毕业生免试攻读研究生的通知...
  12. C++ 动态开辟空间
  13. 忽视警告_不要忽视下雨的风险2
  14. leetcode No7. Reverse Integer
  15. Oracle执行语句跟踪(1)——使用sql trace实现语句追踪
  16. python莫比乌斯内接矩形_用莫比乌斯带巧解内接矩形问题:拓扑学的用处
  17. Unity3D如何快速入门
  18. GNSS中多频观测值的组合形式
  19. 简单的C语言宏定义结合全局变量的方法实现单片机串口实现透传模式
  20. LeetCode(6)-Python-Z 字形变换(zigzag-conversion)

热门文章

  1. 浊音、清音爆破音的时域及频域特性
  2. Drupal独到的编程思想
  3. Android 实现百度地图骑行路线规划,骑行路线规划
  4. 2022,一名85后程序猿之感慨,加油
  5. python解决Unicode编码问题比如\xE6\x9F\xB3\xE4\xBA\x91
  6. 【DB笔试面试1-100】
  7. 2021年茶艺师(中级)考试总结及茶艺师(中级)证考试
  8. python面板数据模型操作步骤_面板数据分析方法步骤全解
  9. 几何公差学习笔记(二)-- 公差带的定义、标注和解释
  10. 分享几个在线网站备案查询