일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 김성엽
- c++
- doit코틀린프로그래밍
- 함수
- 지식나눔강좌
- Kotlin
- CS
- Win32
- 연산자
- 프로그래밍
- Visual Studio
- 배열
- Direct2D
- c#
- tipssoft
- Programming
- Desktop
- 문법
- Windows
- 알고리즘
- 리뷰
- 포인터
- Javascript
- VS ERROR
- Tips프로그래밍강좌
- 티스토리
- 백준
- 이지스퍼블리싱
- c
- Tips강좌
- Yesterday
- Today
- Total
F.R.I.D.A.Y.
프로젝트에서 개발하는 프로그램이 32비트인지 확인하는 방법 본문
Windows OS가 설치된 드라이브를 보면 Program Files이란 폴더와 뒤에 (x86)이라 붙은 폴더가 있습니다. 각각의 폴더는 64비트, 32비트로 개발된 프로그램이 설치되는 기본 폴더를 의미합니다.
그렇다면 64비트 프로그램은 어떻게 개발하고 내가 개발하는 프로그램이 64비트인지는 어떻게 확인할 수 있을까요? 이번 포스트에선 이 방법에 대해 알아봅니다.
※ 이 포스트는 Visual Studio 2019 Community v16.1.2. C 프로젝트에서 테스트되었습니다.
디버그 왼쪽을 보자
상단 메뉴바를 보면 로컬 디버그 작업을 할 수 있는 버튼이 존재합니다.
그 왼쪽을 보면, Debug x86 이 적힌 드롭다운 리스트가 존재하는데요, 여기 보이는 x86이 프로그램을 32비트로 개발하겠다는 설정입니다. 이를 x64로 변경하면 64비트 프로그램으로 개발하게 되는 것이죠.
x64 옵션이 없습니다
드롭다운 리스트를 처음 확인할 때는 x64 옵션이 활성화는커녕 목록에 존재하지 않을 수 있습니다. 이는 활성화를 통해 해결할 수 있습니다.
드롭다운 리스트에서 < 구성 관리자 >를 누릅니다.
구성 관리자를 열면 아래와 같은 창이 나옵니다. < 활성 솔루션 플랫폼 >에서 새로 만들기를 누릅니다.
플랫폼 이름은 x64로 설정한 후 확인을 누릅니다.
이후 프로젝트의 플랫폼이 x64인지 확인하면 됩니다.
64bit 프로그램인지 소스로 확인하기
방법 1.
32비트와 64비트 프로그램은 포인터 변수의 크기가 다릅니다. 따라서 포인터의 크기를 확인해보면 내가 만든 프로그램이 32비트 프로그램인지 64비트 프로그램인지 확인할 수 있습니다.
#include <stdio.h>
int main(void) {
int* p;
printf("포인터 p의 크기는 %2d입니다.\n", sizeof(p)); // sample
printf("%d비트 프로그램입니다.\n", (sizeof(p) == 8 ? 64 : 32));
return 0;
}
방법 2.
위 방법 외에도 다른 방법이 있네요. 아래 블로그 포스트에서 첫 번째 소스코드를 현재 프로젝트에 복사해 테스트해보시기 바랍니다.
! 주의 !
위 포스트에서 주어진 코드를 확인해보니 헤더를 읽을 수 없다고 경고가 나오는데요, 헤더의 이름을 다음과 같이 변경하신 후 테스트하기 바랍니다.
window.h > Windows.h (대소문자 구분합니다)
# index
'DEV > Tip' 카테고리의 다른 글
[goorm]Kotlin Error: *.jar에 기본 Manifest 속성이 없습니다. (0) | 2020.04.01 |
---|---|
프로그램에 일상을 더하다: Intro (2) | 2020.03.17 |
VS ERROR LNK 1168 : Program.exe을(를) 쓰기용으로 열 수 없습니다. (0) | 2019.04.29 |
VS ERROR C6293 : for 루프가 잘못 정의되었습니다. 최소값부터 아래로 계산됩니다. (0) | 2019.04.28 |
VS ERROR C6292 : for 루프가 잘못 정의되었습니다. 최대값부터 위로 계산됩니다. (0) | 2019.04.27 |