我有一个变量
long long int alpha;
这个alpha
基本上是8个字节
但我希望通过输入函数动态决定字节大小。
这样它就可以插入到char*
数组中。
如果有功能
int putInput(int sizeOfAlpha){
long long int alpha;
char* beta = (char*)malloc(128);
for(int i = 0 ; i < 128 ; i++){
... alpha calculation ...
beta[i*sizeOfAlpha] = alpha; // This is also wrong
}
}
那么alpha的大小必须由sizeOfAlpha
修改
例如,如果sizeOfAlpha
为十进制2
,
如果alpha
是0x00 00 00 00 00 00 04 20
的十六进制,
如果i
是0
,
然后beta[0]
应为04
,beta[1]
应为20
十六进制
如果alpha
为0x00 00 00 00 00 00 42 AB
十六进制,
如果i
是1
,
那么beta[2]
应该是42
而beta[3]
应该是AB
十六进制
任何人都可以帮我吗?
答案 0 :(得分:1)
假设alpha
未签名:
std::vector<std::uint8_t> vec(8);
for(std::size_t j = (i + 1u) * sizeOfAlpha - 1u; sizeOfAlpha; --j, --sizeOfAlpha) {
vec[j] = alpha & 0xff;
alpha >>= 8;
}