Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java字节与c++;字节 我知道java 字节< /C>范围为-128到127,但是C++ 字节是无符号char < /代码>(0到255)< < < C++ > C++ C++,我想把C++函数转换成java,C++中有一个 LpByth(这是一个指针,指向代码>字节数组)。我尝试使用了字节> /Cux>数组,而不是在C++函数中使用 LpByth,但是我的java函数仍然不能正常工作。 我的C++函数在BMP文件上工作,它的算法是定制的游程长度编码。在将其转换为Java时,我使用了一个buffereImage,并将其内容作为byte[]获取。我猜Java函数不能正常工作是因为类型不匹配_Java_C++_Image Processing_Run Length Encoding - Fatal编程技术网

java字节与c++;字节 我知道java 字节< /C>范围为-128到127,但是C++ 字节是无符号char < /代码>(0到255)< < < C++ > C++ C++,我想把C++函数转换成java,C++中有一个 LpByth(这是一个指针,指向代码>字节数组)。我尝试使用了字节> /Cux>数组,而不是在C++函数中使用 LpByth,但是我的java函数仍然不能正常工作。 我的C++函数在BMP文件上工作,它的算法是定制的游程长度编码。在将其转换为Java时,我使用了一个buffereImage,并将其内容作为byte[]获取。我猜Java函数不能正常工作是因为类型不匹配

java字节与c++;字节 我知道java 字节< /C>范围为-128到127,但是C++ 字节是无符号char < /代码>(0到255)< < < C++ > C++ C++,我想把C++函数转换成java,C++中有一个 LpByth(这是一个指针,指向代码>字节数组)。我尝试使用了字节> /Cux>数组,而不是在C++函数中使用 LpByth,但是我的java函数仍然不能正常工作。 我的C++函数在BMP文件上工作,它的算法是定制的游程长度编码。在将其转换为Java时,我使用了一个buffereImage,并将其内容作为byte[]获取。我猜Java函数不能正常工作是因为类型不匹配,java,c++,image-processing,run-length-encoding,Java,C++,Image Processing,Run Length Encoding,我应该在Java中使用哪种类型?Java没有无符号类型(除了16位的char)。所以你别无选择,选择byte,但要重写你的代码,使它能处理有符号整数。如果您需要这篇文章的帮助,请输入代码。Java中没有无符号字节类型。您可以改用short。这可以表示从0到255以及更多的所有值。在Java中,您可以使用普通的字节,并根据b&0xFF的要求将其转换为int 您遇到的问题是Java不支持指针,并且无法将指向字节的指针传递给Java。最接近的等效值是字节[] 如果您只进行RLE编码,那么字节的实际值并

我应该在Java中使用哪种类型?

Java没有无符号类型(除了16位的
char
)。所以你别无选择,选择
byte
,但要重写你的代码,使它能处理有符号整数。如果您需要这篇文章的帮助,请输入代码。

Java中没有无符号字节类型。您可以改用
short
。这可以表示从0到255以及更多的所有值。

在Java中,您可以使用普通的
字节
,并根据
b&0xFF
的要求将其转换为
int

您遇到的问题是Java不支持指针,并且无法将指向字节的指针传递给Java。最接近的等效值是
字节[]

如果您只进行RLE编码,那么字节的实际值并不重要,因此它们是有符号的还是无符号的并不重要。如果正在解码BMP文件,则可以根据需要使用上述掩码


在读取/写入字节数组时,常见的解决方案是使用ByteBuffer。它支持在小端数或大字节序中编写诸如“代码>短<代码> >或代码> int /代码>等较长类型,并且不需要预先知道确切的长度。

在C++中没有标准类型<代码>字节< />代码。它是一个typedef/define,通常是
无符号字符
,但到目前为止它可能是
字符
。实际上我必须使用BuffereImage,因为我使用ByteArrayOutputStream获取文件内容,它返回字节[],所以我必须逐字节读取内容并将其转换为简短,对吗?