형식 문자열은 NDR 엔진이 이해하는 해석된 토큰입니다. 형식 문자열을 MOP라고도 합니다. 이 설명서에서는 전체에서 용어 형식 문자열을 사용합니다.
보다 정확하게 말하자면, 형식 문자는 개별(원자성) 해석 가능한 토큰입니다. 각 형식 문자는 크기가 1 바이트입니다. 서식 문자열은 서식 문자 또는 서식 문자 및 숫자 데이터의 시퀀스입니다. 이 용어 설명자는 일반 시퀀스의 이름을 지정하는 데도 사용됩니다. 예를 들어 매개 변수 형식 문자열 또는 매개 변수 설명자는 루틴의 매개 변수를 설명하는 데 사용되는 형식 문자열입니다.
형식 문자에는 FC_LONG 또는 FC_STRUCT 같은 암시적인 기호 이름이 있습니다. MIDL 및 NDR 엔진에서 사용하는 모든 형식 문자열 문자는 Ndrtypes.h 파일에 정의됩니다.
문자열 테이블 서식 지정
엔진에서 사용되는 두 가지 기본 형식 문자열 테이블이 있습니다. 첫 번째는 프로시저 설명자를 유지하는 프로시저 서식 문자열 테이블 (__MIDL_ProcFormatString)이고, 두 번째는 데이터 형식 설명자를 유지하는 형식 문자열 테이블 (__MIDL_TypeFormatString)입니다. 컴파일러는 주 스텁 파일(*_c.c, *_s.c, *_p.c)에 둘 다 생성합니다. 프로시저 형식 문자열 테이블은 주로 다양한 인터프리터에서 사용되지만 컴파일러 모드에 관계없이 버퍼 변환에도 사용됩니다. 형식 형식 문자열 테이블은 코어 NDR 엔진을 호출하여 작업할 특정 데이터 형식을 나타내는 데 사용됩니다.
문자열 서식 표기
이 문서에서 사용되는 표기법은 선택적 요소를 나타내는 데 사용되는 대체 구문 및 대괄호([ ] )를 나타내는 데 사용되는 막대(|)를 사용하여 일반적인 프로그래밍 설명 지침을 따릅니다. 서식 문자열은 가독성을 높이기 위해 자주 누적됩니다. 이 문서 전체에서 FC는 단일 서식 문자를 나타냅니다. 형식 문자는 실제 기호화된 이름을 사용하여 모든 CAPS에 표시됩니다. 다른 임의 필드는 이름과 크기로 표시됩니다.
꺾쇠 괄호(<>)는 설명자의 크기를 나타내는 데 사용됩니다. 다음 표에 표시된 규칙이 사용됩니다.
| 표기법 | 의미 |
|---|---|
| < n> | 설명자의 크기는 n바이트입니다. |
| <> | 설명자의 크기는 다양합니다. |
| {<>}* | 설명자는 여러 번 반복됩니다(0,1,2 ...). |
다음 형식 문자는 특별한 의미를 갖습니다.
| 글자 | 의미 |
|---|---|
| FC_END | 일부 형식 문자열의 끝을 나타냅니다. |
| FC_PAD | 해석되지 않은 패드 문자입니다. |