stdafx.h

Posted by Programmer™
2021. 3. 31. 00:11 카테고리 없음

 

 

Visual C++ 프로그래밍을 하다 보면 AFX 라는 접두사를 많이 볼 수 있습니다.

 

처음에 Microsoft는 AFX ((A) pplication (F) ramework (X)의 약자) 라는 그룹을 만들었습니다.

 

AFX 라는 그룹에서 클래스 라이브러리를 만들었는데 이게 MFC 1.0이 만들어지기 전의 원래 시초입니다.

 

그래서 MFC (Microsoft Foundation Class) 에서는 AFX 시대의 잔재를 여전히 볼 수 있습니다.

 

stdafx.h 에서 afx 는 Application Framework eXtensions 을 의미합니다.

 

stdafx.h 는 미리 컴파일된 헤더 파일로서 이 파일의 목적은 빌드 프로세스의 속도를 높이는 것입니다. 

 

(Visual Studio 2019 버전부터는 pch.h 가 프로젝트에 추가됩니다.)

 

 

● 프로젝트 속성 - 구성 속성 - C/C++ - 미리 컴파일된 헤더

 

 

보다 자세한 내용은 MFC FAQ 를 읽어보시면 됩니다.

 

 

하드디스크 포맷후 실제용량

Posted by Programmer™
2021. 3. 8. 18:29 카테고리 없음

 

컴퓨터에 초짜인 사람의 경우, 판매되는 용량과 실제 포맷 후 용량을 보면 차이가 나서 당황하는 경우가 있습니다.

 

이것은 사실 정상인데요.

 

컴퓨터에서 실제 용량은 2진법으로 계산되지만, 사람들은 10진법에 익숙해져 있어 10진법으로 표기함으로서 용량을 더 크게 보이려는 일종의 마케팅적인 측면도 있습니다.

 

1 KB 는 1000 byte 가 아니라 1 KB = 1024 byte 이다는 기본 사실만 알면 이해하는데 별 문제는 없을겁니다.

 

아무튼 2TB 를 저장할려고 하드디스크를 구매후 포맷했더니 1.86 TB 밖에 안되서 낭패를 보는 경우가 있어서는 안되겠죠.

 

아래는 하드디스크와 각종 메모리 카드를 포맷시 용량입니다.

왼쪽은 시중에서 판매되고 있는 용량이며 오른쪽은 포맷후 용량입니다.

 

 

256MB = 244MB
512MB = 488MB
1GB = 953MB
2GB = 1.86GB
4GB = 3.73GB

8GB = 7.45GB

 

16GB = 14.9GB
20GB = 18.6GB

32GB = 29.8GB
40GB = 37.3GB

64GB = 59.6GB
80GB = 74.5GB
120GB = 111GB


128GB = 119GB
150GB = 139GB
160GB = 149GB
200GB = 186GB
250GB = 232GB

 

256GB = 238GB
320GB = 298GB
500GB = 465GB

 

512GB = 476GB

600GB = 558GB
640GB = 596GB
750GB = 698GB
800GB = 745GB
900GB = 838GB

1TB = 931GB
1.5TB = 1.36TB = 1396GB

2TB = 1.81TB = 1862GB
2.5TB = 2.27TB = 2328GB

3TB = 2.72TB = 2793GB
3.5TB = 3.18TB = 3259GB

4TB = 3.63TB = 3725GB

5TB = 4.54TB = 4656GB

 

그럼 어떻게 이 용량이 나올까요?

 

1GB 가 953 MB 로 나오는 것을 계산기로 두드려 보면

 

 

먼저 판매되고 있는 1GB 를 10진수 바이트 단위로 바꾸면 1,000,000,000 이 됩니다. ( PB > TB > GB > MB > KB > byte )

 

MB 로 표시하기 위해서 KB 와 byte 로 두번 나누어 줍니다.

 

이런식으로 계산하면 됩니다.

 

 

실제로는 파티션 테이블이나 FAT, MFT (Master File Table) 같은 다른 부수 정보들이 저장되므로 이 방법은 간단히 참고용으로 계산하는 방법입니다.

 

5TB 의 경우 이런식으로 계산하면 얼추 4,656 GB 가 나옵니다.