I found both long int long
and int long long
can compile for a variable type. Is there any difference between long int long
, int long long
, long long
and long long int
?
In general, is the type identical if it has the same number of long
?
1 long:
long l;
int long il;
long int li;
2 long:
long long ll;
int long long ill;
long int long lil;
long long int lli;
Also if above is right, are the following declarations also identical?
long long* llp;
int long long* illp;
long int long* lilp;
long long int* llip;
Yes, but please don't. Just as English and German have conventional word orders for adjectives and adverbs (e.g. time - manner - place), so do C and C++. Varying from the conventional order won't confuse the compiler, but it will confuse your fellow developers. I would suggest that the conventional order is roughly along the lines of
static
/extern
(linkage)const
/volatile
(modification)signed
/unsigned
(signedness)short
/long
(length)although there's certainly some wiggle room.