octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: fprintf compatibility


From: Schloegl Alois
Subject: Re: fprintf compatibility
Date: Thu, 2 Jan 2003 04:01:30 -0600
User-agent: Internet Messaging Program (IMP) 4.0-cvs

> On 31-Dec-2002, Paul Kienzle <address@hidden> wrote:
> 
> | John W. Eaton wrote:
> |
> | >What do you think about this feature of Matlab?
> | >
> | >  >> fprintf ('%s\n', [111; 100; 100]);
> | >  odd
> | >
> | >I know that Matlab (originally, anyway, though perhaps not anymore)
> | >stores strings as double precision matrices with a flag set saying to
> | >interpret the numbers as ASCII and print them as strings, etc.  But
> | >the matrix here is not even tagged as a string!
> | >
> | >So, should Octave copy this bug^H^H^Hfeature?
> | >
> | Won't this happen already with implicit_num_to_str_ok = 1?
> |
> | Okay, no it doesn't.
> 
> Right, but perhaps it should.
> 
> | Even if it did, shouldn't it output the following:
> |
> | o
> | d
> | d
> |
> | I have nothing in particular against implicit char->num/num->char, but I
> | also don't
> | mind putting setstr() around the matrices.
> 
> Setstr is definitely the quick fix.
> 
> | I'm a little disappointed that
> | sprintf('%s\n',['o';'d';'d']) doesn't print a column though.
> 


There is a difference between strings and chars. 

A column vector is printed with flag %c 

>> sprintf('%c\n',['o';'d';'d'])

ans =

o
d
d


sprintf('%s\n',['o';'d';'d']) 

ans =

odd




- Alois 



> Disappointing or not, that part is already compatible.  :-/  But it
> does seem inconsistent with the behavior of
> 
>   fprintf ('%d\n', [1; 2; 3])
> 
> for example.
> 
> jwe
> 
> --
> 
> 


-- 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]