标签: unsigned-integer

MATLAB将值向量转换为uint32

我有一个包含值0,1,2和3的向量.我想要做的是从每个从这个向量中提取的16个元素集合中取下两位,并将它们全部附加在一起得到一个uint32.有人知道一个简单的方法吗?

后续:如果向量中的元素数不是16的整数倍,该怎么办?

matlab bit-manipulation vector data-conversion unsigned-integer

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

寻址32个字节需要多少位?

对不起,这是一个非常愚蠢的问题,只是查看我的操作系统课程的旧试卷,并注意到这个问题可以经常出现.如何解决这个问题?我真的不明白.

另一个问题是:

可以用7位,9位和10位表示的最大和最小无符号整数是多少?

有人能告诉我你将如何解决这个问题吗?它只是2 ^ 7吗?

非常感谢 !:)

byte bits unsigned-integer

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

C/GL:在无符号整数数组上使用-1作为哨兵

我在一些GL代码中传递一个顶点索引数组...每个元素都是一个GLushort

我希望用一个标记终止,以避免每次与数组本身一起费力地传递数组长度.

#define SENTINEL ( (GLushort) -1 ) // edit thanks to answers below
:
GLushort verts = {0, 0, 2, 1, 0, 0, SENTINEL};
Run Code Online (Sandbox Code Playgroud)

我不能使用0来终止,因为一些元素的值为0

我可以使用-1吗?

根据我的理解,这将包装到GLushort可以表示的最大整数,这将是理想的.

但这种行为在C中是否得到保证?

(我找不到这种类型的MAX_INT等效常量,否则我会使用它)

c arrays unsigned-integer opengl-es-2.0 sentinel

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

如何将unsigned int转换为NSString?

我有一个未定义的int值为-10,现在我想将其转换为NSString.

简单地说,我们在objective-c中进行iphone编程

int x = 10;
NSString *str = [NSString stringWithFormat:@"%d",x];
NSLog(@"My String is %@",str);
Run Code Online (Sandbox Code Playgroud)

我将控制台输出显示为10

但如果是这样的话

unsigned int x = -10;
NSString *str = [NSString stringWithFormat:@"%d",x];
NSLog(@"My String is %@",str);
Run Code Online (Sandbox Code Playgroud)

然后输出将是相同的,而不是-10,

我怎样才能进行适当的转换?

iphone nsstring unsigned-integer

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

将unsigned int添加到int

#include <iostream>
int main ()
{
    using namespace std;
    unsigned int i = 4;
    int a = -40;
    cout<<a+i<<endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

执行这个给了我4294967260

我知道有一个转换发生,从signed int到unsigned int,但是这个特殊值的方式和原因是什么?我注意到它接近于|的总和 2147483647 | + 2147483647

c++ int types unsigned-integer

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

c ++ - 警告:右移计数> = 32位机器上的类型宽度

我有以下功能:

void func(unsigned long v)
{
  char max_byte = 0xFF;
  char buffer[8];

  buffer[0] = static_cast<char>((v)       & max_byte);
  buffer[1] = static_cast<char>((v >> 8)  & max_byte);
  buffer[2] = static_cast<char>((v >> 16) & max_byte);
  buffer[3] = static_cast<char>((v >> 24) & max_byte);
  buffer[4] = static_cast<char>((v >> 32) & max_byte);
  buffer[5] = static_cast<char>((v >> 40) & max_byte);
  buffer[6] = static_cast<char>((v >> 48) & max_byte);
  buffer[7] = static_cast<char>((v >> 56) & max_byte);
}
Run Code Online (Sandbox Code Playgroud)

它接受一个unsigned long参数并将其8个字节插入char缓冲区(不要试图找出原因.它是一个有意义的函数的简洁版本).

此代码在64位上编译良好,但在32位上我得到以下警告:

warning: right shift count >= width …
Run Code Online (Sandbox Code Playgroud)

c++ bit-shift 32bit-64bit unsigned-integer

3
推荐指数
2
解决办法
5465
查看次数

当我提供一个只接受无符号的函数的有符号整数时,有没有办法让GCC提醒我?

编译时,此代码没有给出警告g++:

unsigned int myFunc(unsigned int integer) {
  return integer;
}
int main() {
  int x = -1;
  std::cout << myFunc(x) << std::endl;
}
Run Code Online (Sandbox Code Playgroud)

它编译得很好,但结果是错误的:4294967295.GCC有没有任何编译器-W*选项?

c++ gcc compiler-errors unsigned-integer

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

C - 检测无符号int溢出的加法

这是我的实现,用于检测在尝试添加两个数字时是否发生了无符号的int溢出.

我系统上unsigned int(UINT_MAX)的最大值是4294967295.

int check_addition_overflow(unsigned int a, unsigned int b) {
   if (a > 0 && b > (UINT_MAX - a)) {
    printf("overflow has occured\n");
   }
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

这似乎适用于我尝试过的价值观.

任何流氓案件?您认为利弊是什么?

c unsigned integer-overflow unsigned-integer

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

C++中的无符号整数

我写下面的代码:

 #include <iostream>
using namespace std;
int main() {

   unsigned int i=1;
   i=i-3;
   cout<<i;
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出是垃圾值,这是可以理解的.
现在我写下面的代码:

    #include <iostream>
    using namespace std;
    int main() {

    unsigned int i=1;
    i=i-3;
    i=i+5;
    cout<<i;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

现在输出是3.这里发生了什么?如何在这里添加垃圾值5?

c++ integer-overflow unsigned-integer

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

以下c程序的输出为-10的原因

#include <stdio.h>

int main() {
    unsigned int a = -10;
    printf("a=%d\n", a);

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

上面的代码是打印-10签名int.如果签名和未签名都打印,-10那么它们之间有什么区别?

c printf format-specifiers unsigned-integer

3
推荐指数
2
解决办法
108
查看次数