Dobrý den, děkuji za velmi přínosný a podrobný seriál.
Jen bych chtěl upozornit, že v porovnání operátoru ++ s jazykem C je zřejmě chyba. Píšete:
V programovacím jazyku C má ovšem stejně zapsaný příkaz odlišný význam, protože zvýší hodnotu ukazatele a potom přečte hodnotu z paměťové oblasti ZA proměnnou x (což je operace, která je samozřejmě chybná a může vést k pádu programu).
Výraz *p++ v C to však dělá obráceně. Nejdříve přečte hodnotu z pozice dané ukazatelem (*p) a potom posune ukazatel na další pozici (p++), takže ke čtení za proměnnou x by došlo až při dalším použití ukazatele.
Díky této vlastnosti je tato konstrukce v C hojně používaná (ve smyčkách).
Toto je právě očekávané chování, protože v C (myslím ten první příklad) se zvyšuje hodnota ukazatele, kdežto v Go se zvyšuje hodnota proměnné, na kterou ukazatel obsahuje adresu. Akorát - jak velmi správně napsal PKs - jsem špatně napsal pořadí operací (první je dereference, druhá zvýšení hodnoty ukazatele)-