Я хочу преобразовать целое число (максимальное значение которого может достигать 99999999) в BCD и сохранить в массив из 4 символов. Как, например: Ввод: 12345 (Целое число) Вывод должен быть = "00012345" в BCD, который хранится в массиве из 4 символов. Здесь 0x00 0x01 0x23 0x45
хранится в формате BCD. Я пробовал следующим образом, но не работал
int decNum = 12345;
long aux;
aux = (long)decNum;
cout<<" aux = "<<aux<<endl;
char* str = (char*)& aux;
char output[4];
int len = 0;
int i = 3;
while (len < 8)
{
cout <<"str: " << len << " " << (int)str[len] << endl;
unsigned char temp = str[len]%10;
len++;
cout <<"str: " << len << " " << (int)str[len] << endl;
output[i] = ((str[len]) << 4) | temp;
i--;
len++;
}
Любая помощь будет оценена