[C++] "long long"= "long long int"= "long int long"= "int long long"입니까?


Answers

유형이 동일한 지 ...

예.

C ++ 11 §7.1.6.2 / 3

" 여러 개의 simple-type-specifier 가 허용되면 다른 순서 지정자가 다른 decl-specifier 와 자유롭게 섞일 수 있습니다.

Question

나는 long int longint long long 모두 variable 타입으로 컴파일 할 수 있음을 발견했다. long int long , int long long , long longlong long int 사이에 어떤 차이가 있습니까?

일반적으로 long 가 같은 경우 유형이 동일합니까?

1 길게 :

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;

위의 내용이 옳다면 다음 선언도 동일합니까?

long long* llp;
int long long* illp;
long int long* lilp;
long long int* llip;



"long long"= "long long int"= "long int long"= "int long long"입니까?

다른 모든 대답은 질문의 두 번째 부분에 대해 이야기했습니다. 첫 번째 부분 : "long long"= "long long int"입니까? , 대답은 ' 예' 입니다.

C ++ 11 7.1.6.2 단순 유형 지정자 (표 10)

Specifier(s)            Type
...                     ...
long long int           long long int
long long               long long int
long int                long int
long                    long int  
...                     ...  

질문의 두 번째 부분 : "long int long"= "int long long"입니까? , 대답은 다시 예스입니다.

타입 지정 자는 임의의 순서로 발생할 수 있으며 다른 선언 지정자와 섞일 수 있습니다 . 따라서 다음 모든

long long  
long long int  
long int long  
int long long  

유효하고 등가입니다.