我在java中有以下代码,我需要转换为c ++才能编码unsigned int。
public static int enc_uint32be( int i, byte[] dst, int di ) {
dst[di++] = (byte)((i >> 24) & 0xFF);
dst[di++] = (byte)((i >> 16) & 0xFF);
dst[di++] = (byte)((i >> 8) & 0xFF);
dst[di] = (byte)(i & 0xFF);
return 4;
}
我是java的新手。我相信这个论坛上的几位专家都知道这两种语言 - 有人可以帮我翻译。
答案 0 :(得分:3)
这取决于您计划使用的数据类型,但如果您只是更改:
byte[] dst
到
unsigned char dst[]
在函数声明中,它的行为应该相同(并将函数中的字节用法也改为unsigned char
)。
答案 1 :(得分:1)
实际上,Java中的代码在C ++中几乎相同,只有很少的修改: