有一个同事,让写一个小程序,但是结果始终有些问题,后来经过检查,发现问题出现在char函数的使用上。
在MATLAB中,可以使用char函数创建一个字符矩阵,如:
mych=char('a','abc','12345','cd');
该命令会创建一个二维的字符矩阵,矩阵行数为4行(即输入的参数个数),矩阵列数为5列(输入各参数字符串长度的最大值)。输入size(mych),其返回值为
ans =
4 5
这说明mych为一个4*5的矩阵。
对于mych中的元素,其字符串长度小于5的,自动在右边补齐空格,直到其长度为5。
如对于mych中的第一行元素,输入命令
length(mych(1,:))
返回值为5,该行元素为:“a ”,注意,这里a后面包含了4个空格。
如果想把元素中的空格去掉,可以使用strtrim()函数,如:
strtrim(mych(1,:)),返回值为:“a”,此时将不再包含空格。
总结:在使用char函数时,要注意对于那些长度没有达到最大值的元素,会在右边自动补空格。
阅读(54890) | 评论(0) | 转发(0) |