Basic Multiplication of long long and int

what is the difference between
int d,e;
long long a=d*** e*** 1LL;

VS

long long a=1LL* d * e ;

because in a question it gave me wrong answer when i wrote long long a=d*** e*** 1LL;

*Correction it is long long a=d * e * 1LL;

hello @manthan.joshi.jiit

multiplication is left - associative .
that means multiplication is done from left to right;

here in case d*e * 1LL -> first d is muliplied with e (int * int multiplication which may cause overflow) and then it is multiplied with 1LL (i,e long long )
but this type case will of no use becuase overflow has already occured.

in second case 1LL * d * e
first 1 long long is multipied with d which will convert d to long long and then this d (now long long) is multiplied with e.
which will not cause any overflow