何时使用无符号值而不是有符号值?

2023-11-22

什么时候适合使用无符号变量而不是有符号变量?那么在一个for loop?

我听到了很多关于这个问题的意见,我想看看是否有任何类似的共识。

for (unsigned int i = 0; i < someThing.length(); i++) {  
    SomeThing var = someThing.at(i);  
    // You get the idea.  
}

我知道 Java 没有无符号值,这一定是一个有意识的决定太阳微系统公司' part.


我很高兴发现一次愉快的谈话关于这个问题,因为我之前并没有真正考虑过这个问题。

总之,有符号是一个很好的通用选择 - 即使你完全确定所有数字都是正数 - 如果你要对变量进行算术运算(就像在典型的 for 循环情况下一样)。

在以下情况下,无符号开始变得更有意义:

  • 你要做的按位的东西比如面具,或者
  • You're 绝望的to 利用符号位对于那个额外的正范围 .

就我个人而言,我喜欢签名,因为我不相信自己能够保持一致并避免混合这两种类型(就像文章警告的那样)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

何时使用无符号值而不是有符号值? 的相关文章

随机推荐

  • AttachEvent / addEventListener 到 Window onload / load - 首选方式

    我有一个在页面加载时启动的脚本 我一直在使用下面的代码来启动它 if window addEventListener window addEventListener load otherRelatedParts false else if
  • C中位域的内存管理

    为了理解位域内存存储 我创建了下面的测试程序 include
  • WPF Metro 窗口全屏

    我目前正在开发 WPF 应用程序 但我不知道如何使我的应用程序全屏显示 我正在使用 MahApps Metro 因此我的主窗口类型是 Controls MetroWindow 我试过这个
  • JPA Criteria API:查询子类的属性

    我有一个这样的类结构 Entity Inheritance strategy InheritanceType JOINED public abstract class Article private String aBaseProperty
  • Automagic 单元测试是否支持 Java 中的对象方法契约?

    在开发 Java 应用程序时 我经常重写对象方法 通常是 equals 和 hashCode 我想要某种方法来系统地检查我是否遵守每个类的对象方法合同 例如 我想要断言对于相等的对象 哈希码也相等的测试 我正在使用 JUnit 测试框架 所
  • 在 Android 应用程序中使用哪个 WebSocket 库? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我想添加一个Service到我的 Android 应用程序 该应用程序在后台运行 持有WebSocket连接 可能需要几个小时甚至几天 并定期向服务
  • php 中按值调用和按引用调用之间的区别以及 $$ 的含义是什么?

    1 我想知道按值调用和按引用调用有什么区别php PHP 是按值调用还是按引用调用 2 我还想知道 登录 php 是什么意思 例如 a name a Paul echo name output is Paul 正如上面的例子 PHP 中的
  • 插入日期时动态智能日期掩码

    javascript 或 jQuery 是否有一种方法可以在键入关键输入以及复制并粘贴到文本框的日期时动态检测和更改 我正在尝试创建一个具有两位数字 例如月份 的功能文本框 由于月份可以是 1 12 之间的数字 我想强制第一个数字为 1 或
  • 在 C 中使用 fread 从 stdin 缓冲读取

    我正在尝试有效地阅读stdin通过使用setvbuf在 IOFBF 模式下 我是缓冲新手 我在寻找working例子 输入以两个整数开始 n k 下一个n输入行包含 1 个整数 目的是打印有多少个整数可以被整除k define BUFSIZ
  • 无需注册事件源即可写入 Windows 应用程序事件日志

    有没有办法写入此事件日志 或者至少是其他一些 Windows 默认日志 我不必注册事件源 是的 有一种方法可以写入您正在寻找的事件日志 您不需要创建新的源 只需使用现有的源 该源通常与事件日志的名称相同 并且在某些情况下 例如事件日志应用程
  • 如何从纬度和经度点获取城市名称?

    有没有办法使用 javascript 的谷歌地图 api 从纬度和经度点获取城市名称 如果可以的话我可以看一个例子吗 这就是所谓的反向地理编码 来自谷歌的文档 http code google com apis maps documenta
  • 返回按钮在 iOS 7 中不可见

    我对 iOS 7 有一些奇怪的问题 我有一个UINavigationBar在我的应用程序中 它非常适合 iOS 6 IOS 6 然而 当我尝试在 iOS 7 上运行它时 我的后退按钮消失了 它就在那里 仍然可以工作并且可以点击 但不可见 I
  • LoadLibrary project.dll 失败。指定的模块无法找到

    当我尝试注册我的 C ATL 项目的 32 位版本时 regsvr32 project dll 我收到此错误 LoadLibrary project dll failed The specified module could not be
  • 将通用 Class 参数限制为实现 Map 的类

    我正在尝试写一个Map建设者 构造函数之一将允许客户端指定类型Map他们希望建立 public class MapBuilder
  • 删除/替换列值中的特殊字符?

    我有一个表列 其中包含我想从中删除所有连字符的值 这些值可能包含多个连字符并且长度各不相同 示例 对于我想要替换的所有值123 ABCD efghi with 123ABCDefghi 删除所有连字符并更新表中所有列值的最简单方法是什么 您
  • Windows Python2.7 mysqldb安装错误

    我正在尝试为 Python 安装 mysqldb 我正在运行 pip install mysql python 我不断收到此错误 运行 build ext构建 mysql 扩展创建 build temp win32 2 7创建 build
  • 在 MVC 框架中的 Javascript 文件中使用内联 C#

    我正在尝试使用 MVC 框架让内联 C 在我的 JavaScript 文件中工作 我编写了这个小测试代码 document ready function alert 当此代码在视图内部使用时 它可以完美地工作 当我离开我的 aspx 视图并
  • AngularJS:将服务注入 HTTP 拦截器(循环依赖)

    我正在尝试为我的 AngularJS 应用程序编写一个 HTTP 拦截器来处理身份验证 这段代码可以工作 但我担心手动注入服务 因为我认为 Angular 应该自动处理这个问题 app config httpProvider functio
  • 如何在matlab中制作圆并在其中生成随机点

    hello i want to ask a question how to make a circle in matlab and mark its center and generate a certain number of rando
  • 何时使用无符号值而不是有符号值?

    什么时候适合使用无符号变量而不是有符号变量 那么在一个for loop 我听到了很多关于这个问题的意见 我想看看是否有任何类似的共识 for unsigned int i 0 i lt someThing length i SomeThin