unsigned相关内容

是否投在内存变量的签署和unsigned int保持精确的位模式之间?

我想通过插座来传递一个32位有符号整数 X 。为了使接收器知道预期的字节顺序,我打电话 htonl(X)发送之前。 htonl 需要一个 uint32_t的不过,我想可以肯定,当我投会发生什么我的 int32_t 到 uint32_t的。 int32_t X =东西; uint32_t的U =(uint32_t的)X; 是不是总是如此,在字节x 和 U 每个将是完全一样的吗?有关转换回什么 ..
发布时间:2016-08-18 22:35:53 C/C++

什么是无符号的数据类型?

我已经看到了这个无符号“无类型”类型中使用了几次,但从来没有见过它的解释。我想有一个对应的签署键入。这里有一个例子: 静态无符号长下一= 1; / * RAND_MAX假定为32767 * / INT myrand(无效){ 接下来=下一个* 1103515245 + 12345; 收益率((符号)(后/ 65536)%32768); } 空隙mysrand(的无符号种子的){ ..
发布时间:2016-08-18 22:15:49 C/C++

为什么为int而不是unsigned int类型多用于C和C ++的for循环?

这是一个相当愚蠢的问题,但为什么是 INT for循环定义时常用的,而不是 unsigned int类型在C或C数组++? 的for(int我;我< ARRAYSIZE;我++){} 对(无符号整数I; I< ARRAYSIZE;我++){} 我认识使用的好处做其他比数组索引和一些使用C ++的容器时,迭代器的好处时, INT 。难道仅仅是因为通过数组循环时不要紧?或者我应该避免 ..
发布时间:2016-08-18 22:12:33 C/C++

无法摆脱的"这小数常量仅ISO C90&QUOT符号;警告

我使用的哈希FNV作为我的哈希表的实现哈希算法,但我发现在这条线的问题的标题警告: 无符号哈希= 2166136261; 我不明白为什么会这样,因为当我这样做:的printf(“%U \\ N”,UINT_MAX); 的printf(“2166136261 \\ n”); 我得到这样的: 4294967295 2166136261 这似乎是在我的机器的极限...... 为什么我得 ..
发布时间:2016-08-18 22:08:04 C/C++

是wchar_t的只是一个无符号短的typedef?

例如,所做的: wchar_t的X; 翻译成:无符号短X; 解决方案 在短:在C可以在C ++中没有 广泛。 çwchar_t的定义为类型定义,但在它的Unix一般是4个字节(所以一般不缺),并在Windows中2所以它可能很短。 在C ++中它是独一无二的内置类型,比如字符或 INT ,所以你可以合法超载无效美孚(简称X)和无效美孚(wchar_t的X) ..
发布时间:2016-08-18 15:05:11 C/C++开发

测试最长的无符号数

这是测试C和C ++ code的最高值,无符号的正确方法是: 如果(富== -1) { //在最大可能值 } 其中foo是 unsigned int类型,一个无符号短,等等。 解决方案 对于C ++,我相信你应该preferably使用 numeric_limits 模板从的 <限制和GT; 标题:如果(富==的std :: numeric_limits< unsi ..
发布时间:2016-08-18 14:55:22 C/C++开发

在C(什么是输出)无符号和符号值

符号int x = -5; unsigned int类型Y = X; 是什么y的值?怎么样? 解决方案 这取决于的最大值unsigned int类型。通常情况下, unsigned int类型是32位长,所以 UINT_MAX 2 32 &减去; 1. C标准(宗; 6.3.1.3/2)需要一个有符号和RARR;无符号的转换作为执行 否则,如果新类型是无符号的值被重复地增加或 ..
发布时间:2016-08-18 14:17:47 C/C++

" strlen的(S1) - 的strlen(S2)"是从不小于零的

我目前正在写一个需要字符串的比较频繁的一个C程序的长度,所以我写了下面的辅助功能: INT strlonger(字符* S1,字符* S2){ 返回的strlen(S1) - 的strlen(S2)> 0; } 我注意到,即使在 S1 比 S2 长度较短的函数返回true。有人可以解释这种奇怪的行为? 解决方案 什么你遇到一些奇怪的行为处理包含符号和无符号数量前press ..
发布时间:2016-08-18 13:48:06 Java开发

应该发生什么一个为size_t(即`-sizeof(结构富)`))的否定?

我处理在工作中的一些code,包括形式的前pression - (的sizeof(结构富)) 即。的否定一个为size_t ,我什么C和C ++标准要求编译器,当他们看到这个不清楚。具体来说,环视这里和其他地方,的sizeof 返回类型的无符号整数值为size_t 。否定一个无符号整数,当我找不到指定的行为的任何明确的参考。有没有,如果有,是什么呢? 编辑:好了,所以有关于对无符号类型算 ..
发布时间:2016-08-17 23:31:11 C/C++开发

用C符号和无符号整型之间的区别

能否请你说清楚有什么区别之间的无符号和 unsigned int类型?也许一些例子code将是有益的。 解决方案 无符号是可以适用于任何整数类型(修改字符,短, INT ,长等),但对自己是等同于 unsigned int类型。 ..
发布时间:2016-08-17 23:27:13 C/C++

打印使用%u和%d个在C内存地址之间的区别?

我读一本C语言书中。要打印出一个变量的内存地址,有时本书使用: 的printf(“%U \\ N”,&安培; N); 有时,作者写道:的printf(“%d个\\ n”,&安培; N); 结果总是相同的,但我不明白之间的差别两个(我知道%U不带符号)。 有人能解释一下吗? 非常感谢。 解决方案 %U 对待整数为无符号,而%d个对待整数作为签名。如果整数为0之间的 INT_MAX ( ..
发布时间:2016-08-17 23:20:04 C/C++

用C无符号的十六进制常量?

请问治疗Ç十六进制常数(例如0x23FE),并签署或unsigned int类型? 阿姆鲁 解决方案 数本身总是PTED作为非负数间$ P $。十六进制常数不具有标志或ex的preSS负数任何固有方式。该类型的常量的是这些可再present自己的价值第一个: INT 无符号整型 长整型 unsigned long int类型 得到long long int 无符号长长整型 ..
发布时间:2016-08-17 23:18:54 C/C++

如何给printf"无符号长"用C?

我永远无法理解如何打印用C 无符号长的数据类型。 假设 unsigned_boo 是无符号长,然后我尝试: 的printf(“%lu个\\ N”,unsigned_boo) 的printf(“%杜\\ n”,unsigned_boo) 的printf(“%UD \\ n”,unsigned_boo) 的printf(“%LL \\ n”,unsigned_boo) 的printf( ..
发布时间:2016-08-17 23:02:29 C/C++

为什么字符的登录内斯用C没有定义?

C标准规定: ISO / IEC 9899:1999,6.2.5.15(第49页) 这三种类型CHAR,符号的字符,以及 unsigned char型统​​称 字符类型。该 实现应定义为CHAR 具有相同的范围,再presentation, 和行为要么签署char或 unsigned char型。 事实上 GCC ,根据目标平台定义。 我的问题是,为什么标准做到这一点? ..
发布时间:2016-08-17 22:57:06 C/C++

为什么是负INT比unsigned int类型更大?

INT主要(无效) { unsigned int类型Y = 10; INT X = - 4; 如果(X> Y) 的printf(“x大于”); 其他 的printf(“Y大于”); 残培(); 返回(0); }输出:x大于 我想输出是y是更大,因为它是无符号。是什么原因背后? 解决方案 ..
发布时间:2016-08-17 22:24:44 C/C++

未签名的性能VS符号整数

是否有任何性能收益/损失通过使用无符号整数超过符号的整数? 如果是这样,这也适用于短期和长期呢? 解决方案 除以2的幂与 unsigned int类型,更快,因为它可以被优化成一个单一的转变指令。随着符号int ,它通常需要更多的机器指令,由于分立发的向零的,而是向右移动查房的下。例如: INT美孚(INT X,无符号Y) { 的x / = 8; Y / = 8; ..
发布时间:2016-08-17 22:18:42 C/C++开发

为什么不是C具有无符号的花车?

我知道,这个问题似乎是陌生的。程序员有时候想太多。请往下看...... 在C I使用符号和无符号整数很多。我喜欢这样的编译器警告我,如果我不喜欢的东西,以一个无符号的变量分配一个符号整数的事实。我得到警告,如果我比较无符号整数,并签署更多。 我喜欢这些警告。他们帮助我保持code正确。 我们为什么不有花车相同的奢侈品?平方根肯定不会返回一个负数。还有其他地方以及其中负浮点值没有任何意义。完美 ..
发布时间:2016-08-17 21:47:01 C/C++

是无符号整数减法定义的行为?

我所遇到的code从别人谁似乎相信有一个来自同一类型的另一个整数减去一个无符号整数时,其结果将是负面的一个问题。这样code像这将是即使它发生在大多数体系结构工作不正确。 unsigned int类型以铁蛋白;为了= getcounter(); 而(1){ TF = getcounter(); 如果((TF-要)> = TIME_LIMIT){ 打破; ..
发布时间:2016-08-17 21:35:57 C/C++

对无符号和符号整数算术运算

请参阅此code段 INT的main() { unsigned int类型A = 1000; INT B = -1; 如果(A> B)的printf(“A大%d个\\ N!”,A-B); 其他的printf(“一个很小%d个\\ N!”,A-B); 返回0; } 这使输出:一个小:1001 我不明白这里发生了什么。如何在>运营商在这里工作?为什么是“一个”比“B”小吗?如 ..
发布时间:2016-08-17 20:33:54 C/C++

红宝石无符号右移

我的java code的一个片段: 收益率(INT)(种子>>>(48 - 位)); 正如你可以看到它使用了无符号向右移位运算符(>>>)。我想在Ruby中实现这个code有没有符号向右移位运算符,只有签署右移位运算。由于我不是很熟悉>>>运营商我不是我怎么会impelemnt这红宝石十分肯定。我试着做一些搜索,看看有没有人遇到过这个问题,但找不到任何培训相关。任何帮助将是非 ..
发布时间:2016-08-07 20:04:49 Java开发