Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String MatLab中的字符串向量/数组_String_Matlab - Fatal编程技术网

String MatLab中的字符串向量/数组

String MatLab中的字符串向量/数组,string,matlab,String,Matlab,我想创建一个字符串容器(数组,向量,…在Matlab中我不太清楚它们之间的区别)。我想用它来显示和打印文件。在C++中,我会有一些类似的事情: std::vector<std::string> str; str.push_back( "Test1" ); str.push_back( "Test2" ); str.push_back( "Test3" ); for( unsigned int i = 0; i < str.size(); i++ ) { printf(

我想创建一个字符串容器(数组,向量,…在Matlab中我不太清楚它们之间的区别)。我想用它来显示和打印文件。在C++中,我会有一些类似的事情:

std::vector<std::string> str;
str.push_back( "Test1" );
str.push_back( "Test2" );
str.push_back( "Test3" );

for( unsigned int i = 0; i < str.size(); i++ )
{
    printf( "%s\n", str[i].c_str() );
}

使用
{
}
(单元格数组),否则只会连接字符串

str = {'test1', 'test2', 'LongerTestString'};

for ii = 1:length(str);
    disp(str{ii});
end

尼克回答的补充(因为cellfun很有趣:):


字符串是字符数组,一个单元格数组可以包含多个数组(长度不同),因此它可以包含多个字符串。矩阵的行/列中也可以包含字符串(长度相同),但单元格数组更适合我。@GuntherStruyf我已经修改了我的答案来说明这一点。是的,答案很好,我只是想解释数据是如何存储的,以及处理字符串/字符时有哪些选项。我同意你的看法,它们很有趣,但是,它们可能很难调试。
str = {'test1', 'test2', 'LongerTestString'};

for ii = 1:length(str);
    disp(str{ii});
end
str = {'test1', 'test2', 'LongerTestString'};
cellfun(@disp, str)