c++中的uint是为了保证返回值为正数使用的么,还是在啥情况下使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++中的uint是为了保证返回值为正数使用的么,还是在啥情况下使用相关的知识,希望对你有一定的参考价值。

参考技术A uint是一种数据类型, 无符号整形, 它只有正整数, 与int比较, int可以表示负整数.
并不是为了保证返回值为正数使用.
参考技术B 1、在C, C++中不存在UINT这个关键字,UINT类型是unsigned int派生出来的。int是带符号的,表示范围是:-21474 83647 到 21474 83648。uint是不带符号整形,表示范围是0到42949 67295(2^32-1),即第一个数字不表示符号。

2、UINT类型在WINDOWS API中有定义,它对应于32位无符号整数。一般定义如下:
typedef unsigned short UINT;本回答被提问者采纳
参考技术C 1、unsigned int/unsigned这两种取4字节正数范围的写法。
2、这种写法能保证返回正数,但不保证能返回正确的数据。【确保正确结果是程序员的责任】
3、使用情况:根据数据的取值范围决定使用哪个类型。一般为了节省内存使用,会刻意按照极大值不超过数据类型原则使用。例:取值范围是-127to128时可能用char,而不用int,当取值为0to255时,可能用unsigned char而不用int,这种写法好处就是节省空间。当无限多的数据存在时,2字节也可能是很重要的,即便现在内存一般都2G,8G甚至16G,2字节看上去就是很虚无缥缈的东西

以上是关于c++中的uint是为了保证返回值为正数使用的么,还是在啥情况下使用的主要内容,如果未能解决你的问题,请参考以下文章

C++返回值为Const &的看法 大虾们给解释下

如何在 C# 中存储从 C++ 函数返回的 uint8_t* 变量?

uint16范围是多少

赋值函数(运算符重载)

如何使用 swig 从`unsigned int *`返回`uint []`

用C++封装了Halcon的算法,返回值为Hobject类型,在C#中调用dll怎么用Hobject类型的返回值。