标签: unsigned

41
推荐指数
2
解决办法
2997
查看次数

无符号和有符号整数的比较运算

请参阅此代码段

int main()
{ 
 unsigned int a = 1000;
 int b = -1;
 if (a>b) printf("A is BIG! %d\n", a-b);
 else printf("a is SMALL! %d\n", a-b); 
 return 0;
}   
Run Code Online (Sandbox Code Playgroud)

这给出了输出:a是SMALL:1001

我不明白这里发生了什么.>运算符如何在这里工作?为什么"a"小于"b"?如果它确实更小,为什么我得到一个正数(1001)作为差异?

c unsigned signed gcc

40
推荐指数
2
解决办法
4万
查看次数

unsigned int(c ++)vs uint(c#)

以下是c#代码:

   static void Main(string[] args)
    {
        uint y = 12;
        int x = -2;
        if (x > y)
            Console.WriteLine("x is greater");
        else
            Console.WriteLine("y is greater");
    }
Run Code Online (Sandbox Code Playgroud)

这是c ++代码:

int _tmain(int argc, _TCHAR* argv[])
{
unsigned int y = 12;
int x = -2;
if(x>y)
    printf("x is greater");
else
    printf("y is greater");

return 0;
}
Run Code Online (Sandbox Code Playgroud)

两者都给出了不同的结果.我错过了什么基本的东西?任何的想法?

c# c++ int unsigned uint

39
推荐指数
2
解决办法
7512
查看次数

Javascript中的无符号整数

我正在处理一个处理IP地址信息的页面,但它正在扼杀整数已签名的事实.我使用按位运算符来加速它,但第64位(有符号/无符号标志)正在弄乱它.

有没有办法强制数字在Javascript中无符号?它似乎工作正常,直到子网大于30或小于2.

试试这个:

<html>
<body>

<script type='text/javascript'>
document.write( (1 << 30) +"<br/>");
document.write( (1 << 31) +"<br/>");
document.write( (1 << 32) +"<br/>");
</script>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

结果:

1073741824 -2147483648 1

javascript unsigned bit-manipulation

37
推荐指数
4
解决办法
5万
查看次数

为什么在C#中"int []是uint [] == true"

有人可以澄清一下C#is关键字.特别是这两个问题:

Q1)第5行; 为什么这会回归真实?

Q2)第7行; 为什么没有施放异常?

public void Test()
{
    object intArray = new int[] { -100, -200 };            

    if (intArray is uint[]) //why does this return true?
    {
        uint[] uintArray = (uint[])intArray; //why no class cast exception?

        for (int x = 0; x < uintArray.Length; x++)
        {
            Console.Out.WriteLine(uintArray[x]);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

MSDN的描述并未澄清情况.它声明is如果满足其中任何一个条件,它将返回true.(http://msdn.microsoft.com/en-us/library/scekt9xw(VS.71).aspx>MDSN文章)

expression is not null.
expression can be cast to type.

我不相信你可以对int []进行有效的转换为uint [].因为:

A)此代码无法编译:

int[] signed = new int[] { -100 };
uint[] unsigned …
Run Code Online (Sandbox Code Playgroud)

c# arrays unsigned casting

34
推荐指数
1
解决办法
4334
查看次数

C++中unsigned和unsigned int之间的区别

unsigned和之间有什么区别unsigned int

这个问题已经回答了C(没有区别):

C中无符号和无符号int之间的区别

我很想知道C++中是否存在任何实际差异.它们是同一类型吗?

c++ int unsigned types

34
推荐指数
1
解决办法
1万
查看次数

C中无符号和无符号int之间的区别

能否请你说清楚有什么区别之间unsignedunsigned int?也许一些示例代码会有所帮助.

c int unsigned

32
推荐指数
3
解决办法
1万
查看次数

为什么'auto'不尊重一元减运算符?

我对C++很新,但我发现这种auto奇怪的行为:

class A{};

int main() {
    A a;
    auto x = -(sizeof(a));
    cout << x << endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

unsigned在这种情况下,变量x 虽然我在变量的初始化时使用了一元减运算符.为什么只考虑sizeof(std::size_t)的返回类型而不是因为使用的运算符而存储的数字是否为负的事实?

我知道size_t是一个unsigned int.

我用GCC 8.1.0和C++ 17试过这个.

c++ unsigned sizeof

32
推荐指数
3
解决办法
2484
查看次数

是否存在用于无符号数字类型包装器的Java库?

显然,Java本身不支持无符号数字类型,并且不会很快改变(从2002年开始的评论).但是,在使用MySQL等数据库时,它们可能会偶尔派上用场.有很多问题涉及如何模拟无符号数.例如:

所有这些肤浅描述它是如何做到.但是它有什么实际图书馆去所有的方式和实施适当的包装UByte,UShort,UInteger,ULong?优选地,那些包装器将延伸java.lang.Number并提供类似于其的算术API java.math.BigInteger.

本文档中可以看出,有很多需要考虑的问题,以及可能出错的问题(例如,如何按位移位,如何乘法等),所以我不想自己做.此外,我不想只使用下一个更高的类型(例如,Short而不是Byte等).我想的概念8-bit,16-bit,32-bit,64-bit号码保留,与数据库提供最好的交互,例如.

更新:

在你回答之前!考虑一下我知道所有的解决方法,但我真的很想拥有具有上述属性的4种类型.也许有人已经这样做了,所以这就是我问的原因.无需提醒我解决方法.

java unsigned numbers

31
推荐指数
2
解决办法
9414
查看次数

在C中,为什么"signed int"比"unsigned int"更快?

在C中,为什么signed int速度比unsigned int?是的,我知道这个网站已被多次询问和回答(链接如下).但是,大多数人说没有区别.我编写了代码并意外地发现了显着的性能差异.

为什么我的代码的"未签名"版本比"签名"版本慢(即使在测试相同的数字时)?(我有一个x86-64英特尔处理器).

类似的链接

编译命令: gcc -Wall -Wextra -pedantic -O3 -Wl,-O3 -g0 -ggdb0 -s -fwhole-program -funroll-loops -pthread -pipe -ffunction-sections -fdata-sections -std=c11 -o ./test ./test.c && strip --strip-all --strip-unneeded --remove-section=.note --remove-section=.comment ./test


signed int

注意:如果我明确声明signed int所有数字,则没有区别.

int isprime(int num) {
    // Test if a signed int is prime
    int i;
    if (num % 2 == 0 || num % 3 == 0)
        return 0;
    else if (num % 5 == …
Run Code Online (Sandbox Code Playgroud)

c optimization performance unsigned signed

30
推荐指数
3
解决办法
4672
查看次数