Я пытаюсь найти квадрат int
. Мой код выглядит следующим образом:
long long sqr=0;
int num=77778;
sqr= num*num;
Результат должен был быть 6049417284
Но когда я проверяю вывод, он показывает 1754449988
. Какую ошибку я делаю? long long
должен иметь возможность сохранить результат, но почему я получаю другое значение?
num*num
дает целое число (и переполнение), которое затем неявно приводится к типу long long. - person Stanley F.   schedule 10.06.2016