Compiler is taking these two same.
long unsigned int a;
unsigned long int a;
Compiler is taking these two same.
long unsigned int a;
unsigned long int a;
They are the same.
Quoting the C11
, chapter §6.7.2, Type specifiers, (emphasis mine)
The list:
type-specifier:
void
char
short
int
long
float
double
signed
unsigned
_Bool
_Complex
atomic-type-specifier
struct-or-union-specifier
enum-specifier
typedef-name
and, P2,
At least one type specifier shall be given in the declaration specifiers in each declaration, and in the specifier-qualifier list in each struct declaration and type name. Each list of type specifiers shall be one of the following multisets (delimited by commas, when there is more than one multiset per item); the type specifiers may occur in any order, possibly intermixed with the other declaration specifiers.