회원가입 ID/PW 찾기

1) 지식 창고는 본인이 작성한 콘텐츠(팁/노하우/리소스/강좌 등)을 무료 혹은 가상화폐인 납포인트를 통해 공유하는 공간입니다.
2) 본인이 작성한 콘텐츠에 대해서만 지식 창고에 등록할 수 있으며, 저작권에 위배되는 콘텐츠는 사전경고 없이 삭제될 수 있습니다.
3) 콘텐츠 구매 및 첨부파일 다운로드는 회원그룹 '연구원' 이상 가능하오니, 경험치를 쌓아 진급한 후에 이용 부탁드립니다.
4) 무료 콘텐츠의 본문은 구매절차 없이 즉시 이용할 수 있으며, 판매 납포인트가 있는 콘텐츠는 구매 후 이용할 수 있습니다.
5) 콘텐츠 판매에 따른 납포인트 수익은 지정한 비율(50%)에 따라 판매자에게 지급하며, 납포인트 수익을 통해 진급을 빨리할 수 있습니다.
6) 구매 후 평가를 하면 구매 납포인트의 20%를 돌려 드립니다.

콘텐츠 수 1,041

#progma 대해서!!

Software & IDEs 구매수 0 2007.06.06 16:42:12
판매자 아크마 판매 납포인트 무료 평점 0점 / 총 0명 참여

#pragma

Each implementation of C and C++ supports some features unique to its host machine or operating system. Some programs, for instance, need to exercise precise control over the memory areas where data is placed or to control the way certain functions receive parameters. The #pragma directives offer a way for each compiler to offer machine- and operating-system-specific features while retaining overall compatibility with the C and C++ languages. Pragmas are machine- or operating-system-specific by definition, and are usually different for every compiler.

-- MSDN

    C 와 C++ 을 구현한 각각의 컴파일러에는 포팅된 하드웨어나 OS 에 의존적인 몇몇가지들의 기능을 가지고 있다. 일례로 몇몇의 프로그램들은 메모리에 데이터가 어떠한 방식으로 자리잡을 것인지 에 관한 문제나 함수가 파라미터들을 조작하는 방법들에 대한 세밀한 조작이 요구된다. #pragma 지시어들은 C 와 C++ 언어 안에서 최소한의 호환성을 유지시키며 그러한 시스템 의존적인 명령어들을 언어의 기능으로서 포함시키는 일을 한다. Pragma 지시어들은 일반적으로 컴파일러들 마다 서로 다르다.


snowflower는 Accelerated C++ 에 있는 map예제를 Visual C++에서 치면서 엄청난 양의 경고를 경험했다. 이것을 어떻게 할 수 있을까 자료를 찾던 중 다음과 같은 방법을 찾았다. map에서 나는 경고는 번호 C4786번과 C4788번(identifier가 너무 길어서 나타나는 경고라고 한다) 단 2개 뿐임을 알았고, 결국 소스의 맨 윗줄에
#pragma warning(disable: 4786 4788) 
한줄을 추가함으로 해결을 봤다.

NeoCoin 은 Debug 모드에서, 값을 추적할 것을 포기하고, Project Setting -> C/C++ tab -> Debug info -> Line Numbers Only 로 놓고 쓴다.

하지만, 이러한 경고는 Visual C++ 6.0 에서만 유효한것이고, VS.NET 부터 추가 세팅이 필요 없다. VC++ 6.0 에서는 map은 물론 STLPort 나, Boost 사용하는 것을 권장하지 않는다. 더 이상 MS 측의 컴파일러 기술 지원이 없으므로, VS.NET 이상 버전을 사용해야 한다.


뿐만 아니라 lib의 추가등이라던지 이 파일이 단 한번만 열리게 할 수도 있다.
#pragma comment(lib, "d3dx9") // dx9.lib 파일을 링크시 포함한다. 
 
#pragma once // 이 파일은 한번만 열리게 한다. 

혹시라도.. 저 #pragma warning(disable: n ... m) 을 써서 언제나 문제를 해결 할 수 있을거라고 생각하시면 안됩니다. 저 위의 설명에도 씌여있듯이, pragma directive 는 지극히.. 시스템에 의존적입니다. 그러므로, VC 에서는 먹힌다는 저 명령어가 GCC 에서는 안될수도 있고.. 뭐 그런겁니다. 확실하게 쓰고싶으시다면.. 그 컴파일러의 문서를 참조하는것이 도움될겁니다.

표준으로 정해진 몇몇의 pragma directive 가 있다고 알고있는데.. 그것들을 내키면 정리해서 올려보겠습니다.

모르는 것이 무엇인지 스스로 정리하고 질문하는 습관을 가집시다.
무성의/광범위하거나 직접 해보지 않고 올리는 질문은 서로를 피곤하게 합니다.
질문쪽지는 사절이오니 게시판에 글을 남겨주세요. 그래야 다같이 공유할 수 있으니까요.


profile
미노 2008.10.14 18:13
제목에 오타가 있군요^^
profile
퍄야 2008.10.18 00:33
다른 컴파일러에서 progma가 안먹힐 때가 있더군요 ㅠ
profile
passion 2009.09.10 10:36
되도록 pragma는 자제하는것이 좋은 습관인것 같아요
gnu계열 컴파일러는 잘 안먹히는 경향이 있죠
profile
타미아 2010.06.04 10:43
오 궁금했던.. pragma에 대한 설명이네요.. ㅋㅋ 유용한 정보 잘 접했습니다.
profile
투신강림 2010.07.15 23:10
정보 감사합니다.,
profile
최강유니 2010.07.26 01:26
감사합니다.
profile
컴쟁이 2013.01.24 00:06
감사합니다
profile
시나브로69 2017.06.24 14:44
좋은 자료 감사합니다.
search
List of Articles
번호 분류 제목 평점 포인트 판매자 등록일 구매수 조회 수
공지 공공의 목적으로 공유하고자 하는 소프트웨어는 '소프트웨어 자료실'에 업로드를 요청드립니다.
공지 구매후 평점 댓글을 남겨주시면 구매포인트의 20%를 돌려드립니다.
141 펌웨어 & 코딩언어 프린터포트를 이용한 PID모터 컨트롤 소스 [3] 무료 아크마 2007-04-13 0 2592
140 펌웨어 & 코딩언어 화상 캠 제어 소스 [2] 무료 아크마 2007-04-13 0 4161
139 펌웨어 & 코딩언어 강력한 FTP프로그램 파일질라[소스코드 공개] [1] 무료 아크마 2007-07-23 0 2626
138 펌웨어 & 코딩언어 IBM Rational Software [2] 무료 아크마 2007-07-01 0 1594
137 펌웨어 & 코딩언어 [프루나] 소스파일 닷넷버젼 [1] 무료 아크마 2007-06-30 0 1512
136 펌웨어 & 코딩언어 OPENGL 예제모음 [2] 무료 아크마 2007-06-06 0 5069
135 펌웨어 & 코딩언어 인스톨쉴드 사용법 [2] 무료 아크마 2007-06-06 0 4276
134 펌웨어 & 코딩언어 자바 스크립트 설명과 예제소스 [2] 무료 아크마 2007-06-06 0 1559
133 펌웨어 & 코딩언어 레지스트리 설정방법 [3] 무료 아크마 2007-06-06 0 1625
132 펌웨어 & 코딩언어 비주얼베이직으로 작성한 시리얼통신 프로그램 소스 [6] 무료 아크마 2007-04-13 0 6564
131 Software & IDEs kreysig의 공업수학 공식정리 [18] 무료 라이언상병 2007-08-23 0 2430
130 Software & IDEs [네트워크] 네트워크 프로그래밍 바이블 소스 [10] 무료 아크마 2007-08-16 0 2088
129 Software & IDEs [네트워크]머드게임 기본 서버,클라이언트 [2] 무료 아크마 2007-08-16 0 2123
128 Software & IDEs [네트워크]블루마블 소스 [2] 무료 아크마 2007-08-16 0 2103
127 Software & IDEs 기초 winsock개념 [8] 무료 아크마 2007-08-10 0 1743
126 Software & IDEs 네트워크 화이트보드 구현(서버, 클라이언트) 구현 [6] 무료 아크마 2007-08-10 0 2036
125 Software & IDEs mscomm.ocx [비주얼베이직 시리얼통신 ocx파일] [3] 무료 아크마 2007-07-01 0 3760
» Software & IDEs #progma 대해서!! [8] 무료 아크마 2007-06-06 0 2233
123 Software & IDEs Visual C++의 64비트 정수형 __int64 사용 방법 [3] 무료 화언 2007-05-29 0 1933
122 Software & IDEs 특수문자,수학기호 읽는법 [24] 무료 아크마 2007-05-28 0 6806
  • 질병은 입을 좇아 들어가고 화근은 입을 좇아 나온다.
    - 태평어람
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.