三年游戏人 2015-09-08 15:32 采纳率: 50%
浏览 2883

c++ int类型长度选择问题

书中这样说:“c++提供了大量的整形,应使用那种类型呢?通常,int被设置为对目标计算机而言最为”自然“的长度,”
这句话怎么理解??
被谁设置的呢?

  • 写回答

4条回答 默认 最新

  • threenewbee 2015-09-08 15:49
    关注

    计算机不是书呆子设计的,你也不能用书呆子的方式学习。

    为什么早期编译器的int值随着编译器产生代码的延长而延长,这是考虑到对原有的程序,不加修改,就可以自然获得更好的性能。

    为什么现在的编译器又不遵循这个规则了,是因为出于向前兼容的需要。作为一种语言,数据类型随意变化是不好的。特别是32bit编译器存在了将近20年的时间。
    比如说分配内存,很多人已经习惯了将int当作4字节使用了。历史包袱在那里。如果编译器将int升级到64bit,一些老的程序就会引入bug。

    评论

报告相同问题?

悬赏问题

  • ¥40 微信小程序 使用vant组件ActionSheet 下拉面板,内容区域滚动会触发。scroll-view自定义下拉刷!即使设置停止下拉刷新也不行。
  • ¥15 专业问题提问,7月5号2点之前
  • ¥25 使用cube ai 导入onnx模型时报错
  • ¥15 关于#微信小程序#的问题:用一个网页显示所有关联的微信小程序数据,包括每个小程序的用户访问量
  • ¥15 root的安卓12系统上,如何使apk获得root或者高级别的系统权限?
  • ¥20 关于#matlab#的问题:如果用MATLAB函数delayseq可以对分数延时,但是延时后波形较原波形有幅度上的改变
  • ¥15 使用华为ENSP软件模拟实现该实验拓扑
  • ¥15 通过程序读取主板上报税口的数据
  • ¥15 matlab修改为并行
  • ¥15 尝试访问%1服务的windows注册表时遇到问题。必须先解决此问题,然后才能运行安装过程。(请确认您正在使用管理员权限运行)373