Seriously guys.  NOOOOOOO!!!!!!!

To print an arbitrary string use fprintf(stdout, "%s", foo);

Come on.

Tom

>>> Jason Dixon 9-Nov-06 16:59 >>>
>
> On Nov 9, 2006, at 11:37 AM, Cassio B. Caporal wrote:
>
> >     Hey,
> >
> >     I have problems to print '%' in stdout... Suppose code below:
> >
> >             #include <stdio.h>
> >
> >             main() {
> >                      char foo[] = "bar=30%\n";
> >                      fprintf(stdout, bar);
> >             }
> >
> >     OpenBSD returns : bar=30
> >     Linux returns   : bar=30%
> >
> >     How can I solve this? Thanks,
>
> $ cat foo.c
> #include <stdio.h>
>
> main() {
>          char foo[] = "bar=30%%\n";
>          fprintf(stdout, foo);
> }
> $ gcc foo.c -o foo
> $ ./foo
> bar=30%

Reply via email to