2

我想创建一个字符串容器(数组,向量,......我不完全知道这些在 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() );
}

我的问题是:我怎样才能在 Matlab 中实现类似的东西,或者甚至有可能。我已经尝试了一些我在这里和那里找到的东西,但没有任何效果。以下是我尝试过的事情:

str = ['Test1' 'Test2' 'Test3'];

str = ['Test1', 'Test2', 'Test3'];

str = ['Test1'; 'Test2'; 'Test3'];
4

2 回答 2

5

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

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

for ii = 1:length(str);
    disp(str{ii});
end
于 2013-06-06T15:15:31.670 回答
0

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

str = {'test1', 'test2', 'LongerTestString'};
cellfun(@disp, str)
于 2013-06-06T15:35:41.070 回答