我有一个名为long long int
的iData
类型的变量;iData
计数从1到最大值。
我需要将这个变量复制到char数组。
我试过下面的方法
long long int iData;
char cDataBuffer[8];
for(i=0;i<8;i++) {
cDataBuffer[i]= (iData & 0XFF);
iData = (iData >>8);
}
但我想把它存储在指针变量
char *pDataBuffer
的动态变量中。有人能建议如何存储这个可变的iData变量长度吗。
最佳答案
下面的逻辑可以帮助你
long long int iData;
char *cDataBuffer;
cDataBuffer = malloc(sizeof(char) * sizeof(iData));
for (i = 0; i < sizeof(iData); i++)
{
cDataBuffer[i] = ((iData >> (i * 8)) & 0XFF);
}
关于c - 将long long int的值动态复制到char数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24597582/