问题标签 [unsigned-char]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
25702 浏览

c - How do I #define an unsigned char* string?

I have following define in my code

and I want to send it with a function com_reply(unsigned char* msg, uint16_t lenght).

Now I get a warning that my argument differs in signedness. I know what the problem is and also why com_reply uses unsigned char* instead of char*, I just want to know:

How can I define my string as an unsigned char* so I can use it throughout my program without getting warnings all over the place.

EDIT:

Strictly speaking I have more than one defines here and the main reason is that there is a BANNER define which consists of several other defines, like this:

Should I create const variables and concatenate them at program start instead of using defines here?

0 投票
1 回答
1067 浏览

objective-c - 将十六进制字符串转换为无符号字符[]

我问这个问题主要是因为我在这个网站上搜索了可能的解决方案,但没有一个能达到我希望的效果。

我想将此十六进制字符串转换为无符号字符 []。

NSString *text = @"0043600001";进入 unsigned char dataSmall[] = {0x00, 0x43, 0x60, 0x00, 0x01}

我需要十六进制表示0x##因为我发送的主机只接受消息hexadecimal format。我说得对吗,我也需要NSScanner执行这些步骤来分隔 2 个字符?真的很迷茫,对我需要做什么感到困惑。

这是连接并将十六进制消息发送到主机的步骤:

PS,我不知道这NSData部分,但是当我使用 NSData 行向主机发送十六进制消息时,它似乎可以工作。所以我保持原样。目前,dataSmall[]是硬编码的,我想知道如何动态处理它。非常感谢这里的所有帮助。

编辑 1 啊,我错过了一个重要信息。十六进制数据ISO8583本身就是一条消息。

0 投票
3 回答
30491 浏览

c++ - 什么时候 uint8_t ≠ unsigned char?

根据 C 和 C++ CHAR_BIT >= 8,.
但是无论何时CHAR_BIT > 8uint8_t甚至都不能表示为 8 位。
它必须更大,因为它CHAR_BIT是系统上任何数据类型的最小位数。

什么样的系统可以uint8_t合法地定义为除 之外的类型unsigned char

(如果 C 和 C++ 的答案不同,那么我想两者都知道。)

0 投票
2 回答
9143 浏览

c - Scanf 十六进制无符号字符

我正在尝试更改数组中的数据,这是我的代码的一部分:

例如,当我的输入88.88.88.88.88.88设置paket[0] - paket[5]为 88 时,它也会更改paket[6], paket[7]paket[8]0。

请问这怎么可能以及如何解决?我只需要改变[0] - [5]

0 投票
2 回答
646 浏览

c - 在c中向char添加值?

嘿伙计们,所以我有一个char,我想给它添加一些整数/双精度数。char 必须是有符号的 char,所以我不能将其设为 int。

该代码有效,但只要我想添加一个分数或其他东西......

它根本没有添加。任何想法为什么?可能与舍入等有关。

谢谢。

0 投票
1 回答
2341 浏览

c - 从 unsigned int 数组转换为 unsigned char 数组

我不知道如何以一种好的方式将 unsigned int 数组转换为 unsigned char 数组。我想收到一些建议。

更清楚地说,我的问题是我有一个函数可以读取内存,将数据放入无符号整数数组中。我想获取这些数据并转换为 unsigned char 以放入,例如串行端口。

谢谢

0 投票
0 回答
1378 浏览

java - Java中的Uchar等价物

我想将一些 C++ 代码转换为 Java,我需要 Java 等价物uchar才能使用下面的 C++ 代码。

0 投票
2 回答
7524 浏览

c - unsigned int 和 unsigned char 之间的比较

我有一个无符号字符数组,例如Data[2]. 我需要它与返回 unsigned int 的函数的输出进行比较。

我试图将其Data[2]转换为 unsigned int ,反之亦然。它没有用。

我想做的是:

ReadFlash2是一个返回 unsigned int 的函数,Data[2]而是一个 unsigned char。

我尝试对它们中的每一个进行施放,但没有奏效。

有什么我做错了吗?我应该投哪一个,我应该投什么?

谢谢。

编辑:Readflash 函数的代码:

0 投票
1 回答
1625 浏览

c++ - 数据包嗅探器只检测发送的数据包

我一直在研究一个数据包嗅探器,只是为了好玩/教育,而且进展顺利。我遇到的问题是,出现的唯一数据包recvfrom()是 SENT 数据包,即以我的 IP 作为其源 IP 而不是我的 WAN IP 而是我的 LAN IP 的数据包(如果这有意义的话)。我尝试修复它并花了几个小时阅读我能找到的所有内容,但对我来说似乎没有解决方案。我 100% 肯定我编写的代码没有检测到所有数据包,因为wireshark 检测到的方式更多(传入和传出),而且很明显,不仅有来自我的 PC 的传出流量。

这就是一切都失败的地方(有更多的代码但并不重要),结构都已正确定义,因此没有错误(否则我无法在每个单独的数据包中一遍又一遍地获得相同的 IP 地址)。此外,我的网络中还有另一个不存在的 IP 显示为源 IP,而且偶尔源 IP 是 0.0.0.0,我都觉得这很奇怪。

缓冲区声明为

所以它是签名的字符,我不知道如何从这些值中手动“提取”标题的单独部分。

我希望任何人都可以向我解释 recvfrom 实际上并没有丢失数据包并且我做错了什么。另外我想知道如何解释输出recvfrom,即将有符号转换为无符号或其他方式?

我希望我把我的问题说清楚了,在此先感谢。

编辑。更大的代码块

0 投票
0 回答
490 浏览

java - 如何将 C 中的无符号字符数组转换为字符串,并使用该字符串转换回 Java 无符号字符数组?

这是我的 C 方法:

在我的 Java 客户端收到字符串后,我想将其转换回 Javaunsigned char数组:

我怎样才能做到这一点?