Path: utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!usc!sdd.hp.com!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!ira.uka.de!smurf!flatlin!spirits!rob From: rob@spirits.ka.sub.org (Roland Bless) Newsgroups: comp.sys.amiga.tech Subject: Re: MFM/IBM Decode Message-ID: <185d09ac.ARN0290@spirits.ka.sub.org> Date: 14 Dec 90 20:48:28 GMT References: <49724@eerie.acsu.Buffalo.EDU> <2542@wn1.sci.kun.nl> Reply-To: rob@spirits.ka.sub.org Followup-To: comp.sys.amiga.tech Organization: Byteable Software Products, private, Karlsruhe (FRG) Lines: 29 In article <2542@wn1.sci.kun.nl>, Olaf Seibert writes: > Many of them are translations from German books from the publisher Data > Becker, and those books have a reputation of containing more incorrect > than correct information. Unfortunately, unless you already have a lot That's true. One Example: The Big C-Book (AMIGA) from Data Becker ("Das grosse C-Buch":Bleek/Jennrich/Schulz). On page 82 they try to explain IN DETAIL how for()-loops in C work, but you guess it, they aren't able to do this correctly: for (i=0; i<5; i++) j+=2; is naturally equivalent by definition to: i=0; while(i<5) { j+=2; i++; }; Their version about it (WRONG!!): 1. Initialization of i (i=0); 2. Execution of the body (j+=2); 3. Incrementation of i; 4. Test the condition. #T->Step 2. #F->leave loop They emphasize differences between for() and while() loops (execution of the body before testing the condition at for()-loops) and show a wrong assembler listing of the compiler output. :-D It's really ridiculous. Greetings, Roland -- R o l a n d B l e s s |UUCP/Internet: rob@spirits.ka.sub.org | Kriegsstrasse 129 |BITNET: UKG5@DKAUNI2.BITNET FAX: +49211623818 | 7500 Karlsruhe - FRG |---------spirits--in--the--material--world---------| voice +49 721 857328 |"They built machines that they can't control" STING|