unsigned-char相关内容

char 和 unsigned char 有什么区别?

(已编辑将 C/C++ 更改为 C) 请帮我找出一个关于C中char和unsigned char的清晰说明.特别是当我们在嵌入式设备和普通PC之间传输数据时(缓冲区之间的区别unsigned char 和普通 char). 解决方案 你问的是两种不同的语言,但在这方面,答案(或多或少)对两者都是相同的.不过,您确实应该决定使用哪种语言. 区别: 它们是不同的类型 cha ..
发布时间:2022-01-12 21:00:59 其他开发

任何将 'char' 视为 'unsigned' 的编译器?

是否有任何 C 编译器将默认类型的 char 视为无符号,除非用户在文件或项目设置中明确提及? /卡努_ 解决方案 GCC 可以.但仅在为约定为 unsigned char 的平台编译时,包括 ARM linux[*].当 GCC 为 x86 编译时,默认为 char 被签名. [*] 或者至少在过去是这样.据我所知,从那以后,Linux 已经在 ARM 上切换到了不同的默认 ..
发布时间:2022-01-12 20:36:17 其他开发

为什么我不能在 char * 和 unsigned char * 之间进行静态转换?

显然编译器认为它们是不相关的类型,因此需要 reinterpret_cast.为什么会有这样的规定? 解决方案 它们是完全不同的类型,见标准: 3.9.1 基本类型 [basic.fundamental] 1 声明为字符 char) 的对象应足够大存储实现的基本字符集的任何成员.如果一个该集合中的字符存储在字符对象中,积分该字符对象的值等于单个的值该字符的字符文字形式.它是实现 ..
发布时间:2022-01-12 20:16:50 C/C++开发

什么时候 uint8_t ≠ unsigned char?

根据 C 和 C++,CHAR_BIT >= 8. 但是每当 CHAR_BIT >8, uint8_t 甚至不能表示为 8 位. 它必须更大,因为 CHAR_BIT 是系统上任何数据类型的最小位数. 在什么样的系统上,uint8_t 可以被合法地定义为 unsigned char 以外的类型? (如果 C 和 C++ 的答案不同,那么我想知道两者.) 解决方案 如果存在,u ..
发布时间:2021-12-25 13:03:28 C/C++开发

uint8小字节序到uint16大字节序

在Python2.7中,通过USB批量传输,我从相机获得了图像帧: frame = dev.read(0x81, 0x2B6B0, 1000) 我知道一帧是342x260 = 88920像素的小尾数,因为我从批量传输中读取了2x88920 = 177840(0x2B6B0). 如何将typecode = B的帧数组的内容转换为uint16大字节序数组? 解决方案 这种方法应 ..
发布时间:2020-07-13 01:39:12 Python

C-unsigned int到unsigned char数组的转换

我有一个无符号的整数(2个字节),我想将其转换为无符号的char类型.通过搜索,我发现大多数人建议执行以下操作: unsigned int x; ... unsigned char ch = (unsigned char)x; 正确的方法吗?我问是因为无符号char是1个字节,我们将2个字节的数据强制转换为1个字节. 为防止任何数据丢失,我想创建一个无符号char []数组并 ..
发布时间:2020-07-13 01:38:08 其他开发

如何定义Swig类型映射以将未签名的char *返回给Java

我有一个Java应用程序,该应用程序调用c库来执行加密功能. 这是一个用c实现的自定义库,我们需要在某些Java程序中使用它. 我需要一种定义SWIG类型图的方法,该方法将允许我调用从Java传递字节数组的函数,并将其视为C函数中的无符号字符指针,其中C函数填充数据并将其返回给Java 我目前不满意的界面文件摘录如下 %module CryptoFacade %pointer_fu ..
发布时间:2020-07-13 01:38:03 Java开发

比较有符号和无符号字符

这似乎很奇怪.我发现误会了.我使用带有字符的gcc作为签名字符.我一直认为,在比较表达式(和其他表达式)中,如有必要,带符号的值会转换为无符号的值. int a = -4; unsigned int b = a; std::cout ..
发布时间:2020-07-13 01:37:59 C/C++开发

char的签名是否是接口问题?

假设我有一个功能 void foo(char *) 在内部,需要将其输入视为NUL终止字节块(例如,它是字符串上的散列函数)。我可以在函数中将参数转换为 unsigned char * 。我也可以将声明更改为 void foo(unsigned char *) 现在,鉴于 char , signed char 和 unsigned char 是三种 ..
发布时间:2018-08-08 18:54:08 其他开发

调试断言失败文件,tokenScanner和文本文件

我编写了一个程序,一次处理文本文件并提取相关信息。我的程序适用于一些文本文件,而不是其他文件。通过我的程序无法运行的文件和没有程序的文件之间没有明显区别。 对于有问题的文件: 程序打开文件 它会一次读入并处理一行中的一个很好的块,因为它应该 但是,它达到了一个问题行并给出错误消息: “调试断言失败的文件: f:/dd/vctools/crt_bld/self_x86/s ..
发布时间:2017-04-21 23:45:54 C/C++开发