我正在为操作系统Rodos实现从C ++到Java的通信接口。
我的C ++有点“生疏”,我以前从未见过这个操作:header+0
一个数组!
RODOS / API /网关/ networkmessage.h:
class NetworkMessage {
static const int HEADER_SIZE = 26;
uint8_t header [HEADER_SIZE];
public:
inline void put_checkSum(uint16_t x) {int16_tToBigEndian(header+0, x); }
inline void put_senderNode(int32_t x) {int32_tToBigEndian(header+2, x); }
RODOS / support_libs /流bytesex.cpp:
void int16_tToBigEndian(void* buff, uint16_t value) {
uint8_t* byteStream = (uint8_t*)buff;
if (byteStream == 0) return;
byteStream[0] = (uint8_t) ((value >> 8) & 0xFF);
byteStream[1] = (uint8_t) ((value >> 0) & 0xFF);
}
如何在Java中实现添加整数数组和整数?
答案 0 :(得分:1)
C中的数组主要是针对类型指针的语法糖。对于T foo[...]
声明,表达式foo + 2
表示指针指向数组foo
的第3个元素。