Tak*_*Tak 5 string matlab cell-array
我正在尝试使用以下方法连接两个字符串:
str=strcat('Hello World ',char(hi));
Run Code Online (Sandbox Code Playgroud)
哪个hi是1x1 cell有字符串的'hi'.
但
str看起来像这样Hello Worldhi.
为什么我错过了' ' after Hello World?
原因在strcat文档中:
对于字符数组输入,
strcat删除尾随 ASCII 空白字符:空格、制表符、垂直制表符、换行符、回车符和换页符。要在连接字符数组时保留尾随空格,请使用水平数组连接,[s1, s2, ..., sN].对于元胞数组输入,
strcat不删除尾随空格。
所以:要么使用单元格字符串(将生成一个包含字符串的单元格)
hi = {'hi'};
str = strcat({'Hello World '},hi)
Run Code Online (Sandbox Code Playgroud)
或普通的、基于括号的连接(将生成一个字符串):
str = ['Hello World ',char(hi)]
Run Code Online (Sandbox Code Playgroud)