显示 更早的评论
Hi,
where is the problem
UserData.matrix(1,2)=num2cell(sym(char(strcat(get(handles.edit7,'string'),',',get(handles.edit6,'String')))))
???
1 个评论
Why the heck is the "sym" in there ??
采纳的回答
John Petersen
2013-3-11
One too many parentheses ). Take one off.
10 个评论
Witch one?
Help, I need insert sym string into cell matrix, sym string I created from 2 edit boxes, and between them is one "," or another char
nevermind, you have the right number of parentheses. What is sym?
why are you using num2cell? You don't have any numbers, just strings. If the strings are numbers you need to convert them using str2double().
john
2013-3-12
编辑:Walter Roberson
2013-3-12
this code works :
UserData.matrix(1,2)=num2cell(sym(strcat('a',get(handles.edit7,'String'),'xx',get(handles.edit6,'String'),'xx',num2str(si_co_val))));
but this no, why?:
UserData.matrix(1,2)=num2cell(sym(strcat(get(handles.edit7,'String'),'xx',get(handles.edit6,'String'),'xx',num2str(si_co_val))));
different is only 'a'
What error are you getting? Split the code into different lines so you can see which parts are working. I suspect it's a problem with sym(), since I don't know what that is doing.
this is error:
??? Error using ==> sym.sym>convertExpression at 2547 Error: Unexpected 'identifier' [line 1, col 3]
Error in ==> sym.sym>convertChar at 2458 s = convertExpression(x);
Error in ==> sym.sym>convertCharWithOption at 2441 s = convertChar(x);
Error in ==> sym.sym>tomupad at 2195 S = convertCharWithOption(x,a);
Error in ==> sym.sym>sym.sym at 111 S.s = tomupad(x,'');
Error in ==> Simulator>pushbutton4_Callback at 642 UserData.celkovamatica(prv-1+3,2)=num2cell(sym(strcat(get(handles.edit7,'String'),'xx',get(handles.edit6,'String'),'xx',num2str(si_co_val))));
Error in ==> gui_mainfcn at 96 feval(varargin{:});
Error in ==> Simulator at 42 gui_mainfcn(gui_State, varargin{:});
Error in ==> @(hObject,eventdata)Simulator('pushbutton4_Callback',hObject,eventdata,guidata(hObject))
??? Error while evaluating uicontrol Callback
Please break up the code
str7 = get(handles.edit7, 'String');
str6 = get(handles.edit6, 'String');
strsi = num2str(si_co_val);
symstr = strcat(str7, 'xx', str6, 'xx', strsi);
disp('symstr =')
symstr
assym = sym(symstr);
disp('assym =')
assym
ascell = num2cell(assym);
disp('ascell =')
ascell
UserData.matrix(1,2) = ascell;
there is the same fault. But I put into UserData.matrix(1,1)...there is no fault for plus value for example 7, but I got error for minus value for example -7...:-(
I modified code in this form
UserData.matrix(1,1)=num2cell(sym(char(strcat(get(handles.edit5,'string'),'_',char(si_co_str{si_co_val}),'_',char(get(handles.edit6,'String'))))))
When I enter into edit6 number 5.4, than I got in matrix 54. But I need number 5.4....how can I solve that?
Please for help
Please break up the code like this
a1 = get(handles.edit6,'String');
a2 = si_co_str{si_co_val};
a3 = get(handles.edit5,'string');
a4 = strcat(a3,'_',char(a2),'_',char(a1));
a5 = sym(char(a4));
UserData.matrix(1,1)=num2cell(a5);
Then perhaps we can see what's going on.
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Operations on Strings 的更多信息
标签
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
