2.1.21. -Dname[(parm-list)][=def]

이 옵션은 name 매크로를 정의합니다.

구문

-Dname[(parm-list)][=def]

인수 설명:

name

정의할 매크로의 이름입니다.

parm-list

쉼표로 구분된 매개변수의 선택적 목록입니다. 매크로 매개변수 목록을 매크로 이름에 추가하여 함수 스타일 매크로를 정의할 수 있습니다.

매개변수 목록은 괄호로 묶어야 합니다. 여러 개의 매개변수를 지정하는 경우 목록에서 쉼표와 매개변수 이름 사이에 공백을 포함해서는 안 됩니다.

Note

UNIX 시스템 상에서는 괄호를 이스케이프해야 합니다.

=def

선택적 매크로 정의입니다.

=def를 생략하면 컴파일러에서는 name을 값 1로 정의합니다.

명령 행에서 토큰으로 인식되는 문자를 포함하려면 매크로 정의를 큰따옴표로 묶어야 합니다.

사용법

-Dname을 지정하는 것은 #define name 텍스트를 각 소스 파일의 헤드에 배치하는 것과 동일한 효과를 갖습니다.

제한

컴파일러에서 다음 순서에 따라 매크로를 정의하고 정의를 해제합니다.

  1. 컴파일러에서 사전 정의된 매크로

  2. -Dname을 사용하여 명시적으로 정의된 매크로

  3. -Uname을 사용하여 명시적으로 정의가 해제된 매크로

예제

명령 행에

-DMAX(X,Y)="((X > Y) ? X : Y)"

위의 옵션을 지정하는 것은 각 소스 파일의 헤드에

#define MAX(X, Y) ((X > Y) ? X : Y)

위의 매크로를 정의하는 것과 같습니다.

추가 참고

Copyright © 2007 ARM Limited. All rights reserved.ARM DUI 0348AK
Non-Confidential