gcc 같은 컴파일러는 long 형이 64bit로 동작하죠. 옛날에는 int형이 2 byte 시절도 있었고...
Saturn64
21.12.04 23:27
long 자료형은 16비트 컴퓨팅 시절 32비트 파일시스템을 도입하면서 정의된 것입니다.
당시 int 자료형은 2바이트인데 int[2]로 쓰기에 번거롭고 비효율적이라 그랬다고.
혼노모
21.12.05 00:23
각각 자료형의 크기는 표준이 따로 없고 OS, 컴파일러에 따라서 다 다릅니다.
int형과 long이 4바이트로 같은 이유는 윈도우가 LLP64 데이터 모델을 채용한 OS라서 그렇습니다.
https://en.wikipedia.org/wiki/64-bit_computing#64-bit_data_models