c++ - 将 int 转换为 char 数组的最佳方法

标签 c++ arrays type-conversion

int 放入 char 数组的最佳方法(性能)是什么? 这是我当前的代码:

data[0] = length & 0xff;
data[1] = (length >> 8)  & 0xff;
data[2] = (length >> 16) & 0xff;
data[3] = (length >> 24) & 0xff;

data 是一个 char 数组(共享 ptr),lengthint

最佳答案

你在找memcpy吗

char x[20];
int a;
memcpy(&a,x,sizeof(int));

您的解决方案也很好 endian safe

旁注:-

虽然没有这样的保证 sizeof(int)==4 对于任何特定的实现。

关于c++ - 将 int 转换为 char 数组的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19497701/

相关文章:

java - 压缩 double 组中的值(不是内存压缩)

c++ - 在动态数组上实现自己的快速排序

javascript - 将字符串数组转换为日期时间数组

java - 在 Android 项目中保护类文件

c++ - 流填充字符的默认定位

c++ - 动态分配的数组未释放

javascript - javascript 中类型之间的转换

c++ - Visual Studio 调试与发布版本 : comparing int and float missmatch

c++ - 汇编中的指针/内存算法

c++ - 将指向数据成员的指针转换为 void *