GUI的M文件中要对数值进行运算,为什么默认是ASCII码?e.g希望+1,结果是+49
A = get_param('model/Constant','value')set(handles.edit_disp,'String',A+1)
希望获取model中constant的值,然后+1显示出来。
如果是set(handles.edit_disp,'String',A),则显示A 的正确值。
如果进行了运算,就是按照ascii码来运算,得出结果不对。
怎么解决呢? 原帖由 Ivy_Kin 于 2006-9-13 16:01 发表
A = get_param('model/Constant','value')
set(handles.edit_disp,'String',A+1)
希望获取model中constant的值,然后+1显示出来。
如果是set(handles.edit_disp,'String',A),则显示A 的正确值。
如果进行 ...
如果你的A是double类型,改为 set(handles.edit_disp,'String',num2str(A+1)) 试试吧 谢谢eight!
A 是double类型的 A=1
试过set(handles.edit_disp,'String',num2str(A+1))结果是50
还是不对
郁闷阿 原帖由 Ivy_Kin 于 2006-9-13 16:29 发表
谢谢eight!
A 是double类型的 A=1
试过set(handles.edit_disp,'String',num2str(A+1))结果是50
还是不对
郁闷阿
晕,如果 A=1,那么 A+1 = 2,为何会是50? 大概前面我没有说清楚把
我建了一个 mdl,里面有一个constant,值为1,类型double
然后我建了一个gui,希望获取model中constant的值,付值给A,然后+1显示在edit_disp中。
A = get_param('model/Constant','value')
set(handles.edit_disp,'String',A)
结果是1 正确
A = get_param('model/Constant','value')
set(handles.edit_disp,'String',A+1)
结果是50 错误
A = get_param('model/Constant','value')
set(handles.edit_disp,'String',num2str(A+1))
结果是50 错误
不知道是那里设置或者有什么命令,可以进行数值运算,而不是ascii码运算?
这只是我毕业设计中的一小部分的一小部分,这都搞不定,怎么办啊 ?晕 原帖由 Ivy_Kin 于 2006-9-13 16:50 发表
大概前面我没有说清楚把
我建了一个 mdl,里面有一个constant,值为1,类型double
然后我建了一个gui,希望获取model中constant的值,付值给A,然后+1显示在edit_disp中。
A = get_param('model/Constant','va ...
关键是get_param这个函数的返回值不是double类型,你自己检查一下吧 谢谢eight的提醒
确实是这样
A = str2num(get_param('model/Constant','value'))
set(handles.edit_disp,'String',A+1)
结果是2 ,就对了
页:
[1]