Clear Filters
Clear Filters

Info

This question is closed. Reopen it to edit or answer.

Hi i want to display two strings in one function but G is showing but M is not i dont know what the problem is kindly help me??

1 view (last 30 days)
function [G,M]=myGreeting(name, major, year)
frmtspc1='Hi, my name is %s and my major is %s.\nI started at Cal in %d.';
frmtspc='This entire char array has length %d.\n';
G=sprintf(frmtspc1,name,major,year);
D=size(G,2);
M=sprintf(frmtspc,D);
end

Answers (1)

Walter Roberson
Walter Roberson on 1 Feb 2018
In order to see M, you need to assign the output of myGreeting to two variables, such as
[A, B] = myGreeting('Inigo Montoya', 'sword fighting', 1964);
disp(A)
disp(B)
  5 Comments
Arslan Ahmad
Arslan Ahmad on 1 Feb 2018
yeah i tried that too but it is showing after two strings
ans=
and shows again first string how do i suppress ans please help
Steven Lord
Steven Lord on 1 Feb 2018
When you call a function in MATLAB without an output, most of the time MATLAB assigns the first output from that function to a special variable named ans.
Call your function with one or more output arguments and MATLAB will assign the appropriate number of outputs that your function is declared to return into those output arguments. For example, in Guillaume's comment myGreeting is called with two output arguments, A and B. MATLAB will take the first output argument myGreeting says it will return (the variable G) and assign it into the variable named A, and similarly for the variables M and B.

This question is closed.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!