Subscripted dimension mismatch error dec2hex
7 次查看(过去 30 天)
显示 更早的评论
Hello
I searched regarding this error but still could not resolve it. I am using the following code:
function[hexoutput] = hexaoutput(colordata)
[row col] = size(colordata);
hexoutput=zeros(row,col);
for i=1:row
for j=1:col
hexoutput(i,j) = dec2hex(colordata(i,j),6);
end
end
end
I am getting the subscripted dim mismatch error. But this is how we loop through a matrix. I am confused. Any help would be great. Thanks.
0 个评论
采纳的回答
Walter Roberson
2016-4-13
dec2hex(SOMETHING,6) is going to return 6 (or more) characters. You then try to store those 6 characters into a single numeric array location. Remember, hex is represented as character, but zeros() is numeric, so you are using the wrong datatype for your output array and you are not allowing for the fact that each output needs multiple characters.
3 个评论
更多回答(1 个)
Roger Stafford
2016-4-13
The dec2hex(colordata(i,j),6) quantity is a string of at least six hex characters, and yet your are attempting to place it in a single element of hexoutput. It won't fit. You'll have to make hexoutput bigger! Maybe you'd like to make it three-dimensional.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!