matlab中可以创建字符串数组!

求教下,matlab中可以创建字符串数组么。即我想string ss[20]这样来创建20个元素。然后用ss[i]给每个元素赋值来形成字符串数组。怎么创建!

第1个回答  2013-04-23
举个例子

ss='This is an example'追问

可以ss(1)赋值'This is an example' ,ss(2)赋值'This is an example2'么

第2个回答  2013-04-23
ss = blanks(20);
ss(1) = 'I';
ss(3) = 'l'; ss(4) = 'o'; ss(5) = 'v'; ss(6) = 'e';
ss(8) = 'm'; ss(9) = 'a'; ss(10) = 't'; ss(11) = 'l'; ss(12) = 'a'; ss(13) = 'b';
disp(ss)追问

ss(1)可以直接赋值‘i love matlab ’么

追答

% 字符串数组 ss(1) 表示一个字符

% 可以直接赋值一个字符串,如果 ss 不够长还会自动扩展
ss = ‘i love matlab ’

追问

你好!我的要求可能没描述清楚,我的意思是这样。

假设我要保存20个字符串。

那么是否有一种方法可以使得首先申明20个元素的位置。比如ss=xx(20)。然后可以给第一个元素赋值。ss(1)=‘i love matlab’。给第二个元素赋值,如ss(2)=‘hello world’等等。

追答

% 可以,但是有个基本概念,ss 如果是字符串数组,那么 ss(1) 表示的是第一行第一列的一个字符
% 所以 ss(1) = ‘i love matlab’ 是错误的
% 应该

ss(20,20) = ' ';
p = 'i love matlab';
ss(1,1:length(p)) = p

% 用 cell 数组会更方便
ss = cell(20,1);
ss{1} = 'i love matlab'

本回答被提问者采纳
相似回答