다양한 길이의 구조 배열로 필드를 포함하는 구조체 배열이 있습니다. 예를 들어MATLAB : 구조 배열로 필드를 사용하여 구조 배열의 전체 길이/크기 결정
의 '구조 '데이터 '필드가'S '에 있고, 또한 구조의 배열 자체는 및
length(s(n).data) ~= length(s(m).data)
I는 시간이 걸린다 배열을 미리 할당 할 모든 필드 s.data.timestamp에서 스탬프. for 루프를 두 번 사용하지 않고이 작업을 수행 할 수 있습니까?
% find the total length
count=0;
for x=1:length(s)
count=count+length(s(x).data);
end
% preallocate timestamp array
timestamp=zeros(1,count);
% populate timestamp array
index=1;
for x=1:length(s)
for y=1:length(s(x).data)
timestamp(index)=s(x).data(y).timestamp;
index=index+1;
end
end
가 난 그냥 'S'와 '데이터'의 평균 길이의 길이에 따라 필요한 것 길이를 과대 평가에 대해 생각하지만, 각각의 실제 길이 '이것은 내가 지금까지 무엇을 가지고 데이터 '필드/하부 구조는 매우 다양합니다. 나는 그것의 지옥을 과대 평가하고 그 결과 배열을 트리밍하는 것이 나을 것인가? 내가 작업하고있는 데이터 세트로는 타임 스탬프가 제로가 불가능하기 때문에 문제가되지 않습니다. 모든 구조 배열 data
가 동일한 필드를 가지며, 행 벡터 인 경우
와우! 단지 두 라인 - 나는 "freakin '천재"라는 용어가 여기에 적용될 수 있다고 믿습니다. – Doresoom
@doresoom : 쉼표로 구분 된 목록은 친구입니다. ;) – gnovice