我想在matlab中创建二进制数,并且难以连接数字。
这是我到目前为止所尝试的内容:
testarray = zeros(10,10)
testarray = num2str(testarray) % Convert all values to type string
testarray(1,1) = num2str(1); % Fill with abitrary value
testarray(1,1) = strcat(testarray(1,1), num2str(0)); % Trying to make '10' here but instead I get this error: "Assignment has more non-singleton rhs dimensions than non-singleton subscripts"
任何帮助都将不胜感激。
答案 0 :(得分:1)
在您的示例中,问题是'10'
的大小为[1,2],而testarray(1,1)的大小为[1,1]。所以你可以考虑改用单元格:
testarray = cell(5,5);
testarray{1,1} = strcat(testarray(1,1), num2str(0));
顺便说一下,你应该看看函数dec2bin
。
来自文档:
dec2bin(23)
ans =
10111
结果值为字符串。
因此,如果要连接两个二进制值(编码为字符串),只需执行:
['10' '11']
ans =
1011