我有一个 2 字节短 int 指针数组short int* hostdata
,想将其转换为 4 字节 unsigned int 和 network byte order unsigned int* net_data
。如果我这样写可以吗:
for(int i = 0; i < numsamples; ++i)
net_data[i] = htonl((unsigned int)hostdata[i]);
或者我应该用 reinterpret_cast 来做,比如:
for(int i = 0; i < numsamples; ++i)
net_data[i] = htonl(reinterpret_cast<unsigned int *>(reinterpret_cast<short int*>hostdata[i]));