Utolsó módosítás: 2009. február 26.
A C nyelvet nagyon jól írja le Kernighan – Richie A C programozási nyelv című könyve (Műszaki Kiadó, második kiadás), ezért az info 2 tárgy elsajátításához mindenképpen ajánlom. Sajnos az eredeti angol nyelvű könyv (eredeti címe The C Programming Language) nehezebben megszerezhető, mint a magyar fordítás, és a magyar fordításban maradt néhány hiba (nyilván a kézi szedés miatt). Ezen az oldalon ezért röviden felsorolom az értelmet leginkább zavaró hibákat, amiket a könyvben találtam. Én csak a 2003-as és 2004-es kék borítójú kiadásokat néztem, lehetséges, hogy a hibák nagy részét a 2006-os, fehér borítójú változatban már kijavították.
long típusú egészek legalább 32
bitet tárolnak.
OXFUL”
helyett „0XFUL” kéne.
==” jel közepén egy szóköz
van, aminek nem szabadna ott lennie.
~”
operátort három példa helytelenül bináris
operátorként használja, mégpedig „x = x ~ 077”,
„x ~ 077”, illetve
„x ~ 0177700”.
(Az első csak a 2003-as kiadásban hibás.) Az angol
eredetiben ezek
helyesen szerepelnek:
„x = x & ~077”, „x & ~077”, illetve
„x & 0177700”.
(Az utolsóban nem is szerepel a „~” művelet.) Ráadásul a
két utóbbi kifejezést összehasonlító mondat értelme is megfordult,
valójában azt
kéne állítania, hogy az „x & ~077” írásmód előnyösebb az „x & 0177700”
műveletnél, mivel bármilyen gépi szóhossz esetén ugyanúgy csak az
utolsó hat bitet kapcsolja ki.
->”
és „.” operátorok közül hiányzik az elválasztó szóköz, a „,” operátort
pedig a táblázat következő sorába kéne rakni. A 2003-as kiadásban még
rosszabb a helyzet: itt mind a „.”, mind a „,” operátor hiányzik a
táblázatból.
continue” után.
*cs = '\n';”
helyett „*cs = '\0';” kéne, a kód így hibás.
Remélem, hogy a könyvkiadó előbb vagy utóbb az interneten nyilvánosságra hoz egy pontosabb és teljesebb hibajegyzéket.