[연습문제]
1. 인자로 32비트 크기의 자료에서 오른쪽 16비트만 잘라내는 매크로를 작성하고, 인자로
0x12345678을 전달했을 때 매크로 사용 결과를 출력하세요.
[소스코드]
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#define LOWORD(bits) ((int)bits & 0xFFFF0000)
#define LOWORD2(bits) (((int)bits >> 16) << 16)
void main()
{
int d = 0x12345678;
printf("원본 값: 0x%x\n", d);
printf("비트 하위 16비트 절삭 결과1 : 0x%x\n", LOWORD(d));
printf("비트 하위 16비트 절삭 결과2 : 0x%x\n", LOWORD2(d));
return;
}
[실행화면]
2. _DEBUG 상수가 정의되었을 때는 Debug mode Hello, World! 라고 출력하고, 그렇지 않을 때는 Release mode Hello, World!라고 출력하는 프로그램을 작성하세요. 단, 반드시 조건부 컴파일로 구현하세요.
[소스코드]
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#ifdef _DEBUG
#define PRINT_HELLO printf("Debug mode Hello, World!\n");
#else
#define PRINT_HELLO printf("Release mode Hello, World!\n");
#endif
void main()
{
PRINT_HELLO
return;
}
[실행결과]
'c언어' 카테고리의 다른 글
20. 완료 프로젝트 (0) | 2023.08.06 |
---|---|
18. 파일 입출력 (0) | 2023.08.01 |
17. 기본 자료구조 (0) | 2023.06.28 |
16. 구조체와 공용체 (0) | 2023.06.28 |
15. 함수에 대한 고급 이론 (0) | 2023.06.27 |