问题标签 [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.
c++ - wchar_t 只是 unsigned short 的 typedef 吗?
例如,是否:
翻译成:
c - 数组的索引和 argc 符号
C 标准(5.1.2.2.1 Program startup)说:
程序启动时调用的函数名为 main。[...]
它应定义为返回类型为 int 且不带参数:
int main(void) { /* ... */ }
或使用两个参数[...]:
int main(int argc, char *argv[]) { /* ... */ }
后来说:
argc 的值应为非负数。
- 为什么不应该
argc
被定义为一个unsigned int
,argc
据说意思是“参数计数”? - 应该
argc
用作argv
?
所以我开始怀疑 C 标准是否说明了数组索引的类型。签了吗?
6.5.2.1 数组下标:
其中一个表达式的类型应为''<em>pointer to object type'',另一个表达式应为整数类型,结果的类型为''<em>type''。
它没有说明它的签名(或者我没有找到它)。使用负数数组索引 ( ) 的代码很常见,array[-1]
但这不是未定义的行为吗?
- 数组的索引应该是无符号的吗?
php - 32 位无符号整数 php
有谁知道类/库/等。可以在 PHP 的 32 位平台上模拟 32 位无符号整数?我将一个 C 库移植到 PHP 中,它使用了许多大于 32 位有符号整数的最大值的整数。
c++ - C ++中的无符号双精度数?
为什么 C++ 不支持无符号双精度语法?
sqlite - SQlite:unix 时间戳的列格式;整数类型
原始问题:unix 时间戳的正确列格式是什么?
网络充满了混乱:一些帖子声称 SQLite 没有无符号类型——不管是什么,或者除了 64 位 int 类型(但有(反)示例调用 UNSIGNED INTEGER)。数据类型页面仅在 bigint 示例中提及它。它还声称有一个 6 字节整数,但没有给出它的名称。似乎我尝试使用 INTEGER 将 4 字节签名的签名存储 unix 时间戳作为负数。我听说有些系统也返回 64 位时间戳。OTOH 我不太喜欢浪费 4 个字节来存储 1 个额外位(时间戳的最高位),即使我必须选择更大的数据格式,我也宁愿选择 6 字节的格式。我什至看过一篇声称 SQLite unix timestamp 是 REAL 类型的帖子......
完整的问题:有人可以澄清一下这个烂摊子吗?
php - PHP 中的 readUnsignedByte 方法
如何在 php 中获取 UnsignedBytes?在 java 中非常简单:readUnsignedByte (Java)
sql-server - 用于 Sql Server 2008 的 4 字节无符号整数?
我知道在 SO 上有多个关于此的问题,但我还没有找到“是的,这就是如何......”的明确答案
所以又来了:在 SQL Server 中将无符号整数值(32 位值或 32 位位图)存储到 4 字节字段中的可能方法是什么?
以下是我看到的想法:
1) 对所有值使用 -1*2^31 偏移量
- 缺点:需要在读/写/聚合之前对值进行数学运算。
2) 使用 4 个 tinyint 字段
- 缺点:需要连接值来执行任何操作
3) 使用二进制(4)
- 缺点:实际使用 4 + 2 字节空间(编辑:varbinary(4) 使用 4+2,binary(4) 仅使用 4)
- 需要在 SqlBinary 中工作或转换为/从其他类型转换
c++ - 如果我为无符号变量分配负值会发生什么?
我很想知道如果我给一个无符号变量分配一个负值会发生什么。
代码看起来有点像这样。
它没有给我任何编译器错误。当我运行程序时,它nVal
被分配了一个奇怪的值!会不会是一些 2 的补码被分配给nVal
?
c - 为什么这个 C 程序输出一个负数?
我已经在一个无符号变量中分配了补码。
那为什么这个 C 程序输出一个负数呢?
c - 为什么在将有符号文字分配给无符号类型时 GCC 不产生警告?
这个网站上的几个问题揭示了混合有符号和无符号类型时的陷阱,大多数编译器似乎在生成这种类型的警告方面做得很好。但是,将有符号常量分配给无符号类型时,GCC 似乎并不关心!考虑以下程序:
使用 GCC 4.2.1 进行如下编译不会在控制台上产生输出:
生成的可执行文件生成以下输出:
-30
将有符号值分配给无符号整数变量时,GCC 是否有任何原因不会生成任何警告或错误消息y
?