【发布时间】:2013-10-30 03:11:23
【问题描述】:
将int 放入char 数组的最佳方法(性能)是什么?
这是我当前的代码:
data[0] = length & 0xff;
data[1] = (length >> 8) & 0xff;
data[2] = (length >> 16) & 0xff;
data[3] = (length >> 24) & 0xff;
data 是 char 数组(共享指针),length 是 int。
【问题讨论】:
-
这是最好的方法。据我所知。 :)
-
联合可以提供相同的功能,但要注意字节顺序:cplusplus.com/doc/tutorial/other_data_types
-
@LightnessRacesinOrbit 最低的执行时间和 CPU 使用率。
-
@Aybe:实际上,不,以这种方式使用
union会产生 UB。使用union进行转换是错误的。 -
@KacperFałat:这只是“最佳”。您不能“更多”或“更少”或“最少”或“最”最佳;)
标签: c++ arrays type-conversion