From: Johannes Schindelin Date: Fri, 16 May 2008 14:32:20 GMT Subject: Re: [PATCH] mailsplit and mailinfo: gracefully handle NUL characters Message-ID: In-Reply-To: <32541b130805160703r27a55b91xbad03eb1d107a176@mail.gmail.com> Hi, On Fri, 16 May 2008, Avery Pennarun wrote: > On 5/16/08, Johannes Schindelin wrote: > > BTW I do not know how much fgetc() instead of fgets() slows > > down things, but I expect both to be equally fast because > > they are both buffered, right? > > In my experience, fgetc() is pretty fantastically slow because you > have a function call for every byte (and, I gather, modern libc does > thread locking for every fgetc). It's usually much faster to fread() > into a buffer and then access the buffer. Hmpf. I hoped to get more definitive information here. Especially given that fgetc() is nothing more than a glorified fread() into a buffer, and then access the buffer. Well, at least you kind of pointed me to the _unlocked() function family. Ciao, Dscho