problem in struct

7 Ansichten (letzte 30 Tage)
huda nawaf
huda nawaf am 6 Mai 2012
hi
I have :
x1(1:length(y),1:length(x))=0;
txt(1:length(y),1:length(x))=' ';
mat=struct('scor',x1,'pointer',txt);
mat.pointer(1,1:end)='none'
??? Subscripted assignment dimension mismatch.
how resolve this problem?

Akzeptierte Antwort

Image Analyst
Image Analyst am 6 Mai 2012
First of all, y is not defined. And what is the size of mat.pointer? Set a breakpoint on the line (I know you know how to do this because you've been around here long enough), and do this:
size(mat.pointer)
If it's not a 1 row by 4 column character array, then the size of mat.pointer and 'none' don't match. And, needless to say, because you're using "end" mat.pointer must already exist, which it might because I can tell you've left out some code.
  3 Kommentare
huda nawaf
huda nawaf am 6 Mai 2012
in fact , my problem is :
i do not want use for in my code so I converted these commands:
for j=1:length(x)
mat(1,j).scor=x1(1,j);
mat(1,j).pointer='none';
end
into:
mat(1,1:end).scor=0;
mat(1,1:end).pointer='none';
when do that get
??? Index exceeds matrix dimensions.
Error in ==> alig_waterman at 71
up_scor=mat(i-1,j).scor+gap;
where i=j=2 in this step
note:length(x)=length(y)=2
x1(1:length(y),1:length(x))=0;
txt(1:length(y),1:length(x))=' ';
mat=struct('scor',x1,'pointer',txt);
thanks in advance
Image Analyst
Image Analyst am 6 Mai 2012
I can't reproduce. I ran your code (below) and it generated no error message whatsoever.
x = 1:2; % Make some arbitrary verctor of length 2
y = 3:4; % Make some arbitrary verctor of length 2
% Note:
% length(x) = 2
% length(y) = 2
x1(1:length(y),1:length(x)) = 0
txt(1:length(y),1:length(x)) = ' '
mat = struct('scor',x1,'pointer',txt)
mat(1,1:end).scor = 0
mat(1,1:end).pointer = 'none'
Does that code produce the mat that you desire?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by