matlab 里面,输入 a=['hello' 10] 然后回车,为什么出来的结果是 a = hello 那个10跑到哪里去了?
答案:2 悬赏:0 手机版
解决时间 2021-04-18 01:56
- 提问者网友:像風在裏
- 2021-04-17 16:23
matlab 里面,输入 a=['hello' 10] 然后回车,为什么出来的结果是 a = hello 那个10跑到哪里去了?
最佳答案
- 五星知识达人网友:梦中风几里
- 2021-04-17 17:37
Matlab中一个矩阵中不能保存两种及以上的数据类型。如果输入两种以上数据类型的数据,则默认保存第一种类型。因此,a只保存了字符串hello。如果想保存,则应使用元胞数组:a={‘hello’,10}追问如果这样的话,我想把a的内容赋给b,是不是也要把b定义为b={0, 0},然后b=a?追答不必要初始化b的,可以直接赋值b=a。当然如果要初始化,你那样写是对的。追问元胞数组里面能包含一个子的元胞数组吗?我定义b的时候就定义在一个元胞数组里面:
程序如下:
这个程序报错报在net(i)=struct(。。。)这一句
追答元胞数组可以嵌套元胞数组。struct中最后应该是a{5}不是a{{5}}
程序如下:
这个程序报错报在net(i)=struct(。。。)这一句
追答元胞数组可以嵌套元胞数组。struct中最后应该是a{5}不是a{{5}}
全部回答
- 1楼网友:污到你湿
- 2021-04-17 18:44
(1)a=['hello' 10]是将字符串hello与10在ASCII表中对应的字符连接起来,这里看不到10,是因为10所对应的字符是控制字符无法显示,另外可以看到数组a的长度是6而不是5,再比如a=['hello' 48],将返回hello0,a=['hello' 49]返回hello1,因为48,49在ASCII表中分别对应字符‘0’和‘1’
(2)应该是可以的,至少在我的平台下没有错误
>> a=['hello' 10]
a =
hello
>> b=[0 0]
b =
0 0
>> b=a
b =
hello追问可是我希望出现的是
a=
hello
10
如果按您给的方法的话,出来的结果就是
a=
hello10追答首先,a=['hello' 10]不可能返回hello10,
若希望出现
a=
hello
10
请试试这条命令a=char('hello',char('10'))
(2)应该是可以的,至少在我的平台下没有错误
>> a=['hello' 10]
a =
hello
>> b=[0 0]
b =
0 0
>> b=a
b =
hello追问可是我希望出现的是
a=
hello
10
如果按您给的方法的话,出来的结果就是
a=
hello10追答首先,a=['hello' 10]不可能返回hello10,
若希望出现
a=
hello
10
请试试这条命令a=char('hello',char('10'))
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯