-3
我试图将正整数的单元格数组打印为空格分隔的字符串。我写了下面的函数,该函数的目的:连接单元格数组的字符串导致不可打印的字符
function string = cell2str(cellArray)
cellStrings = cellfun(@(i){[num2str(i) ' ']}, cellArray);
string = strtrim(horzcat(cellStrings{:}));
end
当我运行报表逐一在Matlab外壳,这个工程,我期望的那样。但只要我自己调用函数,返回值就是一个不可打印的字符串,它只是在shell中显示为一个正方形。这里发生了什么? (建议,以改善功能的欢迎和)
这是个什么样子,当我运行它像(相同的结果,无论我有多少个字符放入输入单元阵列):
>> cell2str({6})
ans =
□
旁注;为什么我不能像往常一样将此函数放置在名为'private'的子目录中?当我从MatLab shell中调用函数时,我只得到Undefined function 'cell2str' for input argument of type 'cell'.
我不能重现错误,你的函数似乎工作正常。你还想提供一个打印输出,告诉你如何在终端中调用它(包括你给它的输入)和它给出的输出吗? –
调用此函数似乎适用于我。它按预期的方式返回字符串。你怎么称呼它?把它放在一个私有的subdir中时,你的问题是什么? – bushmills
至于'私人'subdir问题,我假设你正试图从脚本访问它。 “私人”功能只能从其他功能中看到。 (但是我们已经进入了“猜谜游戏”的领域,请重写你的问题以说明问题,不要猜测) –