티스토리 뷰

핵심

pragma는 컴파일러에게 그 뒤에 오는 내용에 따라 어떤일을 하라는 전처리 명령이다.


pragma once

한번 컴파일 되면 더 이상 컴파일 하지 않는다.

여러개의 cpp파일이 있을때, 하나의 cpp파일이 수정되면, 그 파일만 컴파일하고 나머지는 하지 않는다

보통 .h파일의 최상단에 한번 언급한다.

pragma comment(lib, "ws2_32")

컴파일 시 ws2_32.lib 파일을 링크하라는 명령.

보통 VS같은 IDE개발환경에서는 프로젝트 속성에서 해주는 경우가 있지만, 환경이 바뀔때를 대비해서 사용

pragma pack(n)

위에서, n의 값으로 1,2,4,8 등이 올 수 있으며 특히 네트워크통신쪽을 개발할때 구조체의 맴버들을 align할때 사용하는 것이다


상세 설명 : https://dojang.io/mod/page/view.php?id=432

[

C 언어 코딩 도장: 51.2 구조체 정렬 크기 조절하기

데이터 전송이나 저장을 할 때 구조체 정렬을 피하려면 어떻게 해야 할까요? 그런데 C 언어에서는 구조체를 정렬하는 표준 방법이 없습니다. 하지만 걱정하지 않아도 됩니다. 각 컴파일러에서 제공하는 특별한 지시자를 사용하면 구조체 정렬 크기를 조절할 수 있습니다. Visual Studio, GCC 4.0 이상 #pragma pack(push, 정렬크기) #pragma pack(pop) __attribute__((aligned(정렬크기), packed)) 다음

dojang.io

](https://dojang.io/mod/page/view.php?id=432)

#pragma waming

- 컴파일시에 어떤 조건 (#if, #ifndef)에 의해 개발자에게 어떤 것을 알려주고 싶을 경우

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
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
글 보관함