long long функция выводит не те числа

Тренируюсь работать с классами и возникла такая проблема,мне в задании сказали использовать функцию long long CalculateVolume() Для подсчета объема коробки.

Размер следующий: 1039 X 3749 X 847

Но вместо правильного ответа выдается вообще отрицательное число (-1355615565)

Пробовал использовать другие типы данных для функций по типу long long unsinged int но число которое выводится намного больше чем которое должно получится (18446744072353936051), тоесть когда выводится отрицательное я еще могу понять (памяти не хватает) но когда выводится число намного больше чем которое нужно и неправильно то тут уже не понятно. Объясните пожалуйста в чем проблема? И какой вообще тип функции тут использовать?

Функция:

long long CalculateVolume() {
        return b*h*l;
    }

Ответы (0 шт):