标签: uint

为什么Array.Length是int,而不是uint

为什么是Array.Lengthint,而不是uint.这让我感到困扰(只是一点点),因为长度值永远不会是负数.

这也迫使我在我自己的类上使用int作为length-property,因为当你指定一个int值时,这需要显式地转换...

所以最终的问题是:对于unsigned int(uint)有什么用?甚至微软似乎也没有使用它们.

.net c# int uint

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

uint和unsigned int之间的区别?

有什么区别uintunsigned int?我正在寻找网站,但所有问题都是指C#或C++.我想要一个关于C的答案.

请注意,我在Linux下使用GCC.

c gcc uint

56
推荐指数
5
解决办法
8万
查看次数

用C++获取Unix时间戳

如何uint在C++中获得unix时间戳?我用Google搜索了一下,似乎大多数方法都在寻找更复杂的方式来表示时间.我不能把它作为一个uint

c++ unix timestamp uint

55
推荐指数
7
解决办法
17万
查看次数

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
查看次数

在C中打印void*变量

大家好我想用printf进行调试.但我不知道如何打印"out"变量.

在返回之前,我想打印此值,但其类型为void*.

int 
hexstr2raw(char *in, void *out) {
    char c;
    uint32_t i = 0;
    uint8_t *b = (uint8_t*) out;
    while ((c = in[i]) != '\0') {
        uint8_t v;
        if (c >= '0' && c <= '9') {
            v = c - '0';
        } else if (c >= 'A' && c <= 'F') {
            v = 10 + c - 'A';
        } else if (c >= 'a' || c <= 'f') {
            v = 10 + c - 'a';
        } else …
Run Code Online (Sandbox Code Playgroud)

c printf void-pointers uint

18
推荐指数
3
解决办法
6万
查看次数

生成随机uint

我需要生成范围的随机数byte,ushort,sbyte,short,int,和uint.我能够使用C#中的Random方法生成所有这些类型(例如values.Add((int)(random.Next(int.MinValue + 3, int.MaxValue - 2)));),除了uint,因为Random.Next只接受int值.

是否有一种简单的方法来生成随机uint

c# random uint

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

使用uint或int

当然,我知道无符号整数(uint)和有符号整数()之间的基本区别int.

我注意到在.NET公共类中,一个被调用的属性Length总是使用有符号整数.

也许这是因为无符号整数不符合CLS.

但是,例如,在我的静态函数中:

public static double GetDistributionDispersion(int tokens, int[] positions)
Run Code Online (Sandbox Code Playgroud)

参数tokens和所有元素positions都不能为负数.如果它是否定的,最终结果是无用的.因此,如果我同时使用intfor tokenspositions,我必须在每次调用此函数时检查值(如果发现负值,则返回非感知值或抛出异常),这很乏味.

好的,那么我们应该使用uint两个参数.这对我来说真的很有意义.

然而,我发现,在许多公共API中,它们几乎总是在使用int.这是否意味着在他们的实现中,他们总是检查每个值的负面(如果它应该是非负的)?

总而言之,我该怎么办?

我可以提供两种情况:

  1. 这个功能只能由我自己在我自己的解决方案中调用;
  2. 此功能将被其他团队中的其他人用作库.

我们应该对这两种情况使用不同的方案吗?

彼得

PS:我做了很多研究,仍然没有理由说服我不要使用uint:-)

c# int uint

10
推荐指数
1
解决办法
1476
查看次数

未经检查的 uint 的 C# 溢出行为

我一直在https://dotnetfiddle.net/测试此代码:

using System;
                
public class Program
{
    const float scale = 64 * 1024;

    public static void Main()
    {
        Console.WriteLine(unchecked((uint)(ulong)(1.2 * scale * scale + 1.5 * scale)));
        Console.WriteLine(unchecked((uint)(ulong)(scale* scale + 7)));
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我用 .NET 4.7.2 编译我得到

859091763

7

但是如果我使用 Roslyn 或 .NET Core,我会得到

859091763

0

为什么会发生这种情况?

.net c# overflow uint roslyn

10
推荐指数
1
解决办法
302
查看次数

使用typedef'dint导致错误,而"unsigned int"不会...?

出于某种原因,当我在我的程序中将变量定义为"uint"而不是"unsigned int"时,它会出错.这看起来很奇怪,因为uint的typedef为:

typedef unsigned int uint;
Run Code Online (Sandbox Code Playgroud)

......所以我认为我可以互换地使用这两个.更确切地说,我正在分配一个函数的结果,该函数将"unsigned int"返回到uint变量中,然后在向量调整大小调用中使用该uint ...此时它出错.即,我的代码看起来像这样:

unsigned int getUInt()
{
    return 3;
}

int main(void) {
    vector<vector<float> > vectVect(100000);
    for(uint i = 0; i < vectVect.size(); ++i)
    {
        vector<float>& myVect = vectVect[i];
        uint myUnsignedInt = getUInt();
        myVect.resize(myUnsignedInt);
    }
    cout << "finished" << endl;
}
Run Code Online (Sandbox Code Playgroud)

...它出错的行是myVect.resize行.

显然,我已经有了一个解决方案,但我想了解为什么会发生这种情况,因为我非常困惑.有人有主意吗?

PS - 如果有人认为它可能很重要,我在fedora 15上使用gcc v4.1.2 ...而定义uint的include文件是/usr/include/sys/types.h.

c++ unsigned gcc typedef uint

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

将Uint8ClampedArray转换为常规数组

如何将Uint8ClampedArray(如用于存储HTML5画布图像数据的数据)转换为常规数组,其中值不会被约束到0- 255

javascript arrays uint typed-arrays

9
推荐指数
1
解决办法
4864
查看次数

标签 统计

uint ×10

c# ×5

c++ ×3

int ×3

.net ×2

c ×2

gcc ×2

unsigned ×2

arrays ×1

javascript ×1

overflow ×1

printf ×1

random ×1

roslyn ×1

timestamp ×1

typed-arrays ×1

typedef ×1

unix ×1

void-pointers ×1