问题标签 [unsigned]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 将base64编码的字符串转换为java字节数组
我正在编写一个解密类(AES/CBC/PKCS7Padding),其中加密数据来自 C#。我想采用以下字符串(base64 编码):
usiTyri3/gPJJ0F6Kj9qYL0w/zXiUAEcslUH6/zVIjs=
并将其转换为java中的字节数组以作为密钥传递给SecretKeySpec。我知道 C# 有无符号字节和 java 只有有符号字节的问题。那么我怎样才能传递这个值大于 127 的字符串并让 java 接受键和初始化向量?
c - 为什么char的符号没有在C中定义?
C标准规定:
ISO/IEC 9899:1999, 6.2.5.15(第 49 页)
char、signed char 和 unsigned char 这三种类型统称为字符类型。实现应将 char 定义为与有符号字符或无符号字符具有相同的范围、表示和行为。
确实gcc根据目标平台定义了它。
我的问题是,为什么标准会这样做?除了可怕且难以发现的错误之外,我看不到任何来自模棱两可的类型定义的东西。
不仅如此,在 ANSI C(C99 之前)中,唯一的字节大小类型是 char,因此有时不可避免地使用 char 进行数学运算。所以说“一个人永远不应该使用 char 进行数学运算”并不是那么正确。如果是这样的话,更明智的决定是包括三种类型“ char
, ubyte
, sbyte
”。
这是有原因的,还是只是一些奇怪的向后兼容问题,以便允许将糟糕的(但常见的)编译器定义为标准兼容?
c# - C# 多线程无符号增量
我想从多个线程中增加一个无符号整数。
我知道 Interlocked.Increment,但它不处理无符号整数。我可以使用 lock(),但出于性能原因,我宁愿不使用。
仅以正常方式递增它是线程安全的吗?偶尔的增量是否丢失也没关系,因为它仅用于统计。我不想要的是被破坏的价值。
c++ - 编译器警告
假设我有这个(C++ 或者 C)代码:
我不在乎它是否做得对。重要的部分是在 for 循环声明中。编译器为此给出了有符号/无符号不匹配,因为 size() 返回一个无符号整数,而不是有符号整数。更改i
为未签名有多重要?我将循环计数器声明为 int 是出于习惯,但如果这是一个潜在的错误,我会强迫自己改掉这个习惯。
security - Windows Mobile 取消签名应用安全提示
我有一个 Windows 移动应用程序 (mymobile),我正在尝试在我的 Windows 手机中安装和运行它。一旦安装它,它就会提示用户是/否选项是否让程序在设备中运行。
有没有办法绕过这个?我知道这只是一次,但我只想知道是否可以避免该提示?
注意:可能有一个解决方案,比如在 windows mobile 中编辑一些注册表项,但再次安装 reg 编辑器我需要访问 windows mobile 键盘,原因相同(是/否提示 regedit 应用程序)..
那么有什么方法可以在不触摸winmob键盘的情况下完成这个过程。
php - 如何在 MySQL 或 PHP 中将 32 位整数从无符号转换为有符号?
我在 PHP 中有一个字符串(来自某些数据源),它表示一个格式化的无符号 32 位整数。我需要将它作为带符号的32 位整数存储到 MySQL 数据库中,以便稍后我可以从 PHP 中检索它并将其用作(可能为负的)有符号整数常量(因为 PHP 没有无符号整数)。
所以,我需要的是一种转换方法,适用于 PHP 或 MySQL。它不应该依赖于平台(没有字节序/ 32/64 位问题)。
我知道如何使用 MySQL 将有符号整数转换为无符号整数:
但我不能让它反过来工作(注意:MySQL 在进行强制转换时使用 64 位算术)。
谢谢。
c - 什么是无符号数据类型?
我已经看到这种unsigned
“无类型”类型使用了几次,但从未见过它的解释。我想有一个相应的signed
类型。这是一个例子:
到目前为止我收集的内容:
- 在我的系统上,sizeof(unsigned) = 4
(提示为 32 位无符号整数)
- 它可以用作将另一种类型转换为无符号版本的速记:
这是 ANSI C,还是只是编译器扩展?
silverlight - 在 Silverlight 中,可以为 DependencyProperty 定义最小/最大值吗?
例如,我有一个依赖属性可以更改 Canvas 的 ScaleTransform,但如果它低于零,则会引发错误。当然,如果发生这种情况,我可以在代码中将其强制为零,但我宁愿使用更好的方法,例如使用 Silverlight 中不存在的 udouble(无符号双精度),甚至设置最小/最大值DependencyProperty 中的某处。
这里最好的方法是什么?
objective-c - 在 Objective-C 中从 unsigned char * 到 char * 的定义行为
unsigned char *
我理解和char *
类型之间的区别。我也了解如何在 C++中使用 reinterpret_cast 将 anunsigned char *
转换为 a 。char *
我在 Objective-C 中使用 sqlite3 并试图NSString
从调用
为此,我基本上是在做:
sqlite3_column_text()
,但是,返回一个unsigned char *
,我担心演员表的行为char *
。我已经读过演员表是特定于实现的,我想知道这是否是 Objective-C 中的安全演员表,或者我是否完全在错误的树上吠叫?
c++ - 否定 size_t(即 `-sizeof(struct foo)`))会发生什么?
我正在处理一些工作中的代码,其中包括表单的表达式
即 a 的否定,size_t
当他们看到这一点时,我不清楚 C 和 C++ 标准对编译器的要求。具体来说,从这里和其他地方环顾四周,sizeof
返回类型为 的无符号整数值size_t
。在否定无符号整数时,我找不到指定行为的任何明确参考。有没有,如果有,是什么?
编辑:好的,所以关于无符号类型的算术有一些很好的答案,但不清楚这实际上是否如此。当这否定时,它是对无符号整数进行操作,还是转换为有符号类型并对其进行处理?从标准中期望的行为是否“想象它是相似幅度的负数,然后对无符号值应用'溢出'规则”?