From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 109fba,df854b5838c3e14 X-Google-Attributes: gid109fba,public X-Google-Thread: 10db24,fec75f150a0d78f5 X-Google-Attributes: gid10db24,public X-Google-Thread: 103376,df854b5838c3e14 X-Google-Attributes: gid103376,public X-Google-Thread: 1014db,df854b5838c3e14 X-Google-Attributes: gid1014db,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: ANSI C and POSIX (was Re: C/C++ knocks the crap out of Ada) Date: 1996/04/19 Message-ID: #1/1 X-Deja-AN: 150677263 references: <4kf5mrINN47r@keats.ugrad.cs.ubc.ca> <4kgmlpINN7aj@keats.ugrad.cs.ubc.ca> <01bb2dcf.9445c060$c6c2b7c7@Zany.localhost> organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++,comp.edu Date: 1996-04-19T00:00:00+00:00 List-Id: Bradd says "For comparison, consider other functions that fill buffers, like sprintf or scanf. They don't take a byte count at all. They just assume that the programmer has the sense to provide a buffer big enough for the data you ask for. Providing a length argument doesn't change this kind of common sense." Ah, but see that this common sense is EXACTLY wrong here. Yes indeed, I can see one style of common sense that says that the critical thing is to provide a bug enugh buffer to accomodate the data you ask for, bug remember that the semantics of read is that "the data you are asking for" is either count data or all the data that is there, which ever is smaller. So if there are only 5 bytes and the count is 10, then you are asking for 5 bytes to be read, but the whole point of this rather tedious thread is that this brand of common sense is wrong here. Incidentally, Bradd;s first paragraph, about just trying things till they work, and not reading the standard, is a rather appalling commentary on the state of the way that many programmers work if you ask me. This kind of attitude is what causes a LOT of portability problems in read life.