Можно ли хранить ведущий ноль в int?

У меня есть задание на программирование, в котором мне нужно зашифровать 4-значный код int, введенный пользователем. Я разделил int на четыре отдельных значения, и функции шифрования и дешифрования работают. Моя проблема в том, что когда я соединяю четыре отдельных целых числа вместе, некоторые числа шифруются до нуля (например, в: 1234 out: 0189), и я хочу сохранить выходные данные в int для использования с другими функциями.

Прямо сейчас у меня есть полуиспеченное решение, которое сначала печатает 0, если первое целое равно 0.

void joinInt(){
    if(int1 == 0) {cout < 0;}
    joined = int1 * 1000;
    joined += int2 * 100;
    joined += int3 * 10;
    joined += int4;
    cout < joined < endl;
    }

Ответы на вопрос(5)

Ваш ответ на вопрос