Main Content

mxCreateStructArray(Fortran)

N차원 구조체형 배열

Fortran 구문

#include "fintrf.h"
mwPointer mxCreateStructArray(ndim, dims, nfields, fieldnames)
mwSize ndim
mwSize dims(ndim)
integer*4 nfields
character*(*) fieldnames(nfields)

설명

mxCreateStructArray를 호출하여 채워지지 않은 구조체 mxArray를 생성합니다. 구조체 mxArray의 각 요소에는 동일한 개수의 필드(nfields에 지정됨)가 들어 있습니다. 각 필드에는 fieldnames에 지정된 이름이 있습니다.

각 필드는 0으로 초기화된 mxArray 포인터를 한 개씩 유지합니다. mxSetField 또는 mxSetFieldByNumber를 호출하여 0이 아닌 mxArray 포인터를 필드에 배치합니다.

이 함수는 dims 인수에 지정된 후행 한원소 차원을 자동으로 제거합니다. 예를 들어, ndim5이고 dims[4 1 7 1 1]이면, 결과로 나타나는 배열의 차원은 4×1×7입니다.

mxArray 사용을 마치면 mxDestroyArray를 호출하십시오. mxDestroyArray 함수는 mxArray 및 이와 연결된 요소를 할당 해제합니다.

입력 인수

모두 확장

차원 수로, mwSize로 지정됩니다. ndim이 2보다 작은 경우 mxCreateStructArray는 차원 수를 2로 설정합니다.

차원 배열로, mwSize로 구성된 ndim 배열로 지정됩니다.

차원 배열의 각 요소에는 해당 차원의 배열 크기가 들어 있습니다. 예를 들어 5×7 배열을 생성하려면 dims(1)을 5로, dims(2)를 7로 설정하십시오.

일반적으로 dims 배열에는 ndim개의 요소가 들어 있습니다.

각 요소의 필드 수로, integer*4로 지정됩니다.

하나 이상의 필드 이름으로, character*(*)로 지정됩니다.

필드 이름은 유효한 MATLAB® 식별자여야 합니다. 즉, 비어 있을 수 없습니다. 필드 이름은 대/소문자를 구분합니다. 필드 이름의 최대 길이를 확인하려면 namelengthmax 함수를 사용하십시오.

출력 인수

모두 확장

mxArray에 대한 포인터로, mwPointer로 지정됩니다.

mxArray 생성을 위한 여유 힙 공간이 충분하지 않으면 이 함수는 실패합니다.

  • MEX 파일 — 함수는 MEX 파일을 종료하고 제어를 MATLAB 프롬프트로 반환합니다.

  • 독립 실행형(비 MEX 파일) 애플리케이션 — 함수는 0을 반환합니다.

버전 내역

R2006a 이전에 개발됨