WebSphere Message Service Clients for C/C++ and .NET, Version 1.2 운영 체제: Linux, Windows

값으로 바이트 배열을 리턴하는 C 함수

주제은 값으로 바이트 배열을 리턴하는 C 함수에 사용되는 인터페이스를 설명합니다.

C API에서 특정 함수는 바이트 배열을 매개변수로 리턴합니다. 각 함수는 바이트 배열 검색에 동일한 인터페이스를 사용합니다. 다음은 해당 함수 중 하나인 PropertyContext 클래스의 xmsGetByteArrayProperty()에 대한 예입니다.
xmsRC xmsGetByteArrayProperty(xmsHObj object
                              xmsCHAR *propertyName,
                              xmsSBYTE *propertyValue,
                              xmsINT length,
                              xmsINT *actualLength
                              xmsHErrorBlock errorBlock) const;
다음과 같은 세 개의 매개변수가 바이트 배열의 검색을 제어합니다.
propertyValue
이 매개변수는 XMS 배열로 바이트를 복사해 넣는 응용프로그램에서 제공하는 버퍼의 포인터입니다.
length
이 매개변수는 버퍼 길이(바이트)입니다. 이 매개변수는 호출 전에 응용프로그램에서 설정해야 하는 입력 매개변수입니다. XMSC_QUERY_SIZE를 지정한 경우 바이트 배열은 리턴되지 않고 actualLength 매개변수로 길이가 리턴됩니다.
actualLength
이 출력 매개변수는 XMS 버퍼로 복사해 넣는 배열의 바이트 수입니다. 입력에서 이 매개변수의 널 포인터를 지정한 경우 배열의 길이는 리턴되지 않습니다.

버퍼가 전체 배열을 저장할 정도로 크지 않을 경우 XMS 버퍼의 길이로 잘려진 배열을 리턴하고, actualLength 매개변수를 전체 배열의 길이로 설정하며, 오류 코드 XMS_E_DATA_TRUNCATED를 리턴합니다.

두 개의 함수인 xmsBytesMsgReadBytes()xmsStreamMsgReadBytes()의 인터페이스가 약간씩 다릅니다. 이러한 함수 중 하나를 사용하여 응용프로그램은 함수를 연속 호출해서 각 단계에서 바이트 배열을 검색할 수 있습니다. 각 호출은 내부 커서의 현재 위치에서 시작된 응용프로그램이 제공하는 버퍼로 바이트를 읽어 넣으며 출력 매개변수인 returnedLength는 버퍼로 읽어 넣는 바이트 수를 응용프로그램에 알려 줍니다. 두 함수 모두 인터페이스에 actualLength와 동등한 매개변수를 갖지 않지만 응용프로그램이 현재 커서 위치부터 시작하여 배열에 남은 바이트 수를 판별하기 위해 XMSC_QUERY_SIZE를 지정할 수 있습니다.


Concept topic

이용약관 | 피드백

Timestamp icon마지막 갱신 날짜: 3 Mar 2006
(C) Copyright IBM Corporation 2005. All Rights Reserved.
이 Information Center는 Eclipse 기술 기반입니다. (http://www.eclipse.org 웹 사이트 참조)