Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: printf again



Bart Schaefer wrote:
> 
> On Nov 9,  4:31pm, Oliver Kiddle wrote:
> }
> } It is doing my head in to try to work out how to do the memory
> } management for using sprintf so that print -f can work with -s/-z.
> } Formats like `%#010000000x' don't make it easy.
> 
> Not surprising.  You basically have to emulate the action of the printf
> implementation.  This is why some C libraries have snprintf() which will
> return the length of the result without actually doing the print.
> 
> I suggest you punt:  Just fprintf() to a temp file and then read it back.
> If you wanted to get really fancy you could memory-map the file where
> that is supported.

Good, thanks, that'll be a lot easier.

I thought about mmap() mainly because I was trying to think of a way to
ensure that the OS didn't bother touching the actual disc to write a
file unless it was large. Would it be worth using any of the setbuf()
calls - I've never used them before but they look like they may do
that job. Or should I just rely on the filesystem code having some
intelligence?

I may also try out open_memstream where it is available because it is
fairly much perfect for the job.

Oliver

_____________________________________________________________________
This message has been checked for all known viruses by the 
MessageLabs Virus Scanning Service. For further information visit
http://www.messagelabs.com/stats.asp



Messages sorted by: Reverse Date, Date, Thread, Author