abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
včera 21:44 | Nová verze

Po roce vývoje od vydání verze 11.0 byla vydána nová verze 12.0 a krátce nato 12.0.1 open source alternativy GitHubu, tj. softwarového nástroje s webovým rozhraním umožňujícího spolupráci na zdrojových kódech, GitLab (Wikipedie). Představení nových vlastností v příspěvku na blogu.

Ladislav Hagara | Komentářů: 0
včera 17:00 | Zajímavý článek

Článek na webu OSTechNix ve stručnosti popisuje technologie „balení“ aplikací AppImage, Snap a Flatpak: jejich stěžejní vlastnosti a rozdíly mezi nimi. Text se nezabývá správci balíčků Guix či Nix, ani tradičními distribučními správci balíčků jako APT, YUM aj.

Fluttershy, yay! | Komentářů: 0
včera 11:00 | Zajímavý článek

Národní centrum kybernetické bezpečnosti aktualizovalo bezpečnostní doporučení pro síťové správce (pdf). Tato doporučení jsou nastavena tak, aby je bylo možné aplikovat pokud možno v každé instituci. Doporučení jsou opět rozdělena do tří základních částí: bezpečnost infrastruktury, bezpečnost stanic a serverů a bezpečnost uživatelů.

Ladislav Hagara | Komentářů: 4
včera 09:11 | Komunita

Nedávno byla představena publikační platforma people.kernel.org. Své zápisky zde mohou publikovat vývojáři jádra Linux. Řešení je postaveno na WriteFreely a Write.as.

Ladislav Hagara | Komentářů: 0
24.6. 12:11 | Nová verze

Byla vydána nová verze 2019-06-20 linuxové distribuce Raspbian určené především pro jednodeskové miniaturní počítače Raspberry Pi. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Společně s Raspbianem byl aktualizován také instalační nástroj NOOBS (New Out Of the Box Software). Nejnovější verze Raspbianu vychází z Debianu 10 s kódovým názvem Buster a přináší především podporu Raspberry Pi 4 Model B.

Ladislav Hagara | Komentářů: 1
24.6. 10:55 | Zajímavý článek

Vývojáři postmarketOS (GitLab) hodnotí dva roky vývoje tohoto v květnu 2017 představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky [reddit, Hacker News].

Ladislav Hagara | Komentářů: 0
24.6. 10:11 | IT novinky

Nadace Raspberry Pi na svém blogu oficiálně představila (YouTube) jednodeskový počítač Raspberry Pi 4 Model B. K dispozici je ve třech verzích: 1 GB, 2 GB a 4 GB RAM. Cena začíná na 35 dolarech za verzi s 1 GB RAM. Nejnovější Raspberry Pi podporuje 2 monitory a rozlišení 4K.

Ladislav Hagara | Komentářů: 29
23.6. 18:22 | Komunita

Oznámení, že Ubuntu od vydání 19.10 nebude distribuovat 32bitové balíčky (ani multilib) a uživatelé mohou použít virtualizaci či kontejnery LXD, se setkalo s vlnou nevole, mj. protože i řada 64bitových aplikací využívá 32bitový instalátor. Vývojáři Wine a Steamu oznámili, že zřejmě přestanou Ubuntu od vydání 19.10 podporovat. Diskuze na Redditu: [Wine], [Steam].

Fluttershy, yay! | Komentářů: 58
22.6. 16:11 | IT novinky

Nový open source Windows Terminal představený na vývojářské konferenci Microsoft Build 2019 lze již instalovat z Microsoft Store. Podrobnosti v příspěvku na blogu Microsoftu.

Ladislav Hagara | Komentářů: 11
21.6. 13:11 | Zajímavý projekt

Článek na OMG! Ubuntu! představuje projekt Wayfire, jehož cílem je vývoj kompozitního správce oken inspirovaného Compizem běžícího nad Waylandem. Videoukázky na YouTube. Zdrojové kódy na GitHubu.

Ladislav Hagara | Komentářů: 9
Jakou verzi jádra Linux typicky používáte na osobním počítači?
 (17%)
 (20%)
 (55%)
 (3%)
 (4%)
Celkem 361 hlasů
 Komentářů: 9, poslední 21.6. 14:42
Rozcestník

Učebnice C

23.5.2006 21:15 | Přečteno: 3434× | Tvorba

Učím se programovat a jako programovací jazyk jsem zvolil klasické C. Nějaký ten hrubý přehled jsem již získal z příruček a učebnic na netu různé kvality, ale stále jsou oblasti (a je jich dost :-( ) do kterých jsem ještě pořádně neproniknul. A hlavním kamenem úrazu jsou ukazatele.

Jednu proměnnou nebo jednoduché pole v parametru funkce po chvíli (zbytečného) zkoušení a přepisování (a hledání v předchozích zdrojácích - jak jsem to jen udělal) ještě zvládnu. U složitějších věcí ale ani metoda pokus omyl nezabírá - člověk prostě musí vědět co přesně chce. Ale pak následují temnější zákoutí, které jsou pro mne černou magií (například u slovíčka dereference jen pokývnu smutně hlavou). Vždycky existuje druhé řešení - udělat to jako globální proměnné. Jenže to se mi hnusí a tak kolikrát (i na pár měsíců) s rozdělaným programem jednoduše praštím a pak mě straší všude možně.

Dalším problémem je třeba dynamická alokace paměti, ale to se dá vždycky nějak vyřešit - nevidím to zase jako takový problém, po tom co jsem si napsal v potu tváře pár funkcí :-).

Co jsem se tak zatím ptal, tak mi všichni radí zkoušet tohle v praxi, prostě si vyrábět příklady a dívat se jak to funguje. Jelikož už nechcu na pointerech troskotat, asi to tak udělám, ale přece jen bych chtěl mít nějakou pomůcku - učebnici stále po ruce.

Od knihy si představuji, že mě důkladně seznámí s problematikou pointeru (i na složité úrovni), krom toho tam budou i příklady (abych věděl jak to prakticky hned využít), byla by v ní zmíněna problematika dynamické alkokace a sloužila by mi i jako referenční příručka stále po ruce. Přečetl bych si ji celou, dověděl bych se mnoho pro mne nových věcí, nechal si to v hlavě uležet a pak s nějakým obecným přehledem bych získané věci zkoušel. Už prostě nechci tápat ve tmě.

Tak co, máte nějaký návrh? Knihu bych si rád koupil v net obchodě a chci předejít zklamání - proto se ptám :-). Děkuji za všechny podmětné reakce.

       

Hodnocení: -

zatím nehodnoceno
        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

23.5.2006 21:19 Kníže Ignor | skóre: 19 | blog: stoupa
Rozbalit Rozbalit vše Re: Učebnice C
klasické C? no, nevím, jestli K&R C je pro dnešek to pravé... :-)
Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
23.5.2006 21:24 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Učebnice C

No, používám samozřejmě vylepšenou verzi C89/99 (nevím jaký je v tom přesně rozdíl). Hlavně ať to umí /**/ :). Ale přece jen je to pořád staré dobré Céčko. A k němu linkuji SDL, takže pro například 2D hry zatím dostačující.

Baník pyčo!
23.5.2006 21:23 Martin | skóre: 10 | blog: Nádraží Perdido
Rozbalit Rozbalit vše Re: Učebnice C
Já se s C celkem dobře skamarádil díky knize od Pavla Herouta - Učebnice jazyka C. Učilo se mi z ní opravdu lehce a bez problémů. Ale je fakt, že jsem po dvou měsících vyzkoušel Python a ten mě svou jednoduchostí tak nadchnul, že jsem zůstal u něj. Po matuře se ale chystám na C/C++ vrhnout. Před výškou budu mít pár měsíců volna, tak bych ten čas chtěl investovat do pořádnýho programování. Zatím to bylo spíš jen takový plácání do vody, na žádnej velkej projekt jsem se nezmohl.
23.5.2006 21:38 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Učebnice C
Jsem na tom úplně stejně (i s oblibou pythonu - i když ho neumím). Projekt rozdělaný mám (vektorová rpg hra), nějak i vymyšlený (taky jen obecně) a postupně se při jeho realizaci učím. Ale jde to ztuha.
Baník pyčo!
Josef Kufner avatar 24.5.2006 08:32 Josef Kufner | skóre: 68
Rozbalit Rozbalit vše Re: Učebnice C
Jo, tahle knížka je fakt dobrá.
Hello world ! Segmentation fault (core dumped)
24.5.2006 13:19 trocha pravdy | skóre: 3 | blog: nic
Rozbalit Rozbalit vše Re: Učebnice C
Jeste musis dodelat toho hada ;-)
24.5.2006 17:28 Martin | skóre: 10 | blog: Nádraží Perdido
Rozbalit Rozbalit vše Re: Učebnice C
*podíval se do profilu na jméno, nick muf211 mu nějak není povědomej*

Ááá, nazdár! :o)

Jasně, co jsem slíbil, to splním. :o)
23.5.2006 21:23 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Učebnice C
Kup si knížku (má dva díly) od Herouta, je to asi to nejlepší co si můžeš za rozumné peníze pořídit.
-- Nezdar není hanbou, hanbou je strach z pokusu.
23.5.2006 21:36 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Učebnice C
Vypadá dobře, zkusím ji někdy sehnat. Díky!
Baník pyčo!
23.5.2006 21:52 Pavel 'lingeek' Szalbot | skóre: 54 | Třinec
Rozbalit Rozbalit vše Re: Učebnice C
Herout je pro začátečníka asi opravdu nejlepší. Ze zvědavosti jsem si ovšem nedávno pořídil K&R obohaceného o C99 a řekl bych, že je to asi nejlepší knížka o jazyce C, jakou jsem dosud četl. Ve světle okolností mě tak hodně zajímá i Stroustrup (http://books.musicabona.cz/item/0201700735.html). I když na Eckela nedám dopustit...
Math, as Barbie says, is hard.
23.5.2006 23:37 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: Učebnice C
Souhlas a ještě tak přidat nedávno přeložené pány Kernighana a Ritchieho, na kterých se podepsal i pan Virius, a víc člověk už asi k Cčku nepotřebuje. ;-)
23.5.2006 23:53 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Učebnice C
Nemám tolik financí, ale začínám se přiklánět k názoru že místo Herouta si opatřím právě K&R... Nenávidím dilema :(.
Baník pyčo!
24.5.2006 00:01 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
Rozbalit Rozbalit vše Re: Učebnice C
Ono to jde i bez tištěné literatury. Heroutovy dvě knížky o C sice mám, ale jsou mi trochu na nic, protože jsem se z nich moc nového nedověděl. Možná proto, že ty Pasti a propasti jazyka C++ mám déle. Potom mám ještě knížku o rezidentních programech a to je tak asi všechno, co u programování doma mám. (Ještě jsem zapomněl na nějaká omšelá skripta o Pascalu. :-)

C se dá naučit s minimem literatury (C++ možná taky, ale mně to nešlo). Hlavní je to zkoušet a mít na to dost času. V 90. letech jsem na to měl času plno a taky jsem nikam nespěchal. ;-) Teď už je to pěknej vopruz.
24.5.2006 00:07 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Učebnice C
Njn, ale hlavně tu knihu potřebuju kvůli nakopnutí do těch pointerů. Ale věřím že se o nich K&R rozepsali. Tak snad to bude dobrá volba.
Baník pyčo!
24.5.2006 00:23 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: Učebnice C
Některé knihy jsou k nezaplacení. :-) Nelituji dvou tisíc investovaných do Grahamova ANSI Common Lispu, jakož i těch dalších výdajů, co mám v plánu. :-) Litovat tří set za Kernighana a Ritchieho nebo dvou set za Herouta - kdo to kdy viděl? Sotva hodina práce...
23.5.2006 21:38 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
Rozbalit Rozbalit vše Re: Učebnice C
Doporučuju Pasti a propasti jazyka C++ od Miroslava Viriuse. Prochází tam všelijaké chytáky, na které lze v C a C++ narazit. Ukazatele samozřejmě též.
23.5.2006 21:46 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Učebnice C
No, právě že C++ zatím do toho moc tahat nechcu, C mi stačí až až. Mám v plánu se nejprve pořádně naučit to céčko a teprve pak pronikat do tajů v C++, takže teď budu rád za něco více specializovaného na C.
Baník pyčo!
elviin avatar 23.5.2006 22:47 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
Rozbalit Rozbalit vše Re: Učebnice C
Prave to nikdo, kdo dela C++ nedoporucuje.
23.5.2006 23:08 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Učebnice C
Co? Muj styl přístupu k těmto dvoum programovacím jazykům. Proč?
Baník pyčo!
23.5.2006 23:19 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
Rozbalit Rozbalit vše Re: Učebnice C
C a C++ jsou jazyky, které mají společnou historii, jsou si z velké části podobné, ale je mezi nimi velký rozdíl v mnoha ohledech.

Můj pocit z C je takový, že je to jakýsi velmi šikovně napsaný jazyk vyšší úrovně, který však dovoluje programovat velmi nízkoúrovňové věci, které by se jinak dělaly např. v asembleru. Jeho síla je v práci s řetězci, ukazateli, pamětí obecně.

C++ nabízí objekty s metodami, dědičnost a šablony, klasické céčkové ukazatele někdy ustupují spíše do pozadí (což neznamená, že je nelze používat). Objekty se hodí nejen k programování uživatelského rozhraní, ale i třeba k algebraickým výpočtům, jako je práce s vektory, maticemi, tenzory... Hodí se všude tam, kde je třeba vzájemně slučovat mnohá rozhraní. A šablony (kontejnery) jsem si nechal na konec - je to něco jako chytré makro, do šablony se dosadí konstanta či nějaký typ (klidně zase šablona), šablona se rozvine, překladač se může vyřádit s optimalizacemi a výsledkem je rychlý, snadno naprogramovatelný, i když někdy trochu velký kód.

Jaký je závěr? Na něco se hodí céčko, na něco pro změnu C++.
23.5.2006 23:36 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Učebnice C
Souhlasím, vím a chápu to! Právě proto se nejprve chci naučit C, i když některé věci jsou v něm zbytečně krkolomné (a C++ by je elegantně vyřešilo) a teprve pak zkoušet C++, protože kdybych se začal rovnou učit tu směsku, tak neumím pořádně ani C, ani C++. Takhle se naučím obojí a mnohem čistěji :). A pak jedna důležitá věc na závěr - není kam spěchat.
Baník pyčo!
DjAARA avatar 24.5.2006 00:16 DjAARA | skóre: 32 | Praha|Náklo|Olomouc
Rozbalit Rozbalit vše Re: Učebnice C
Takhle se naucite pouzivat C++ jako obalku na C kod xD. Nedoporucuji.
24.5.2006 07:44 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: Učebnice C
Vzdy je to o cloveku. To ze niekto sa to nenaucil neznamena, ze sa to nikto nenauci. Nie je dolezite zvladnut syntax C alebo C++, ide o to, ci clovek zvladne to, comu sa bezne nadava paradigma, plati to hlavne pre OOP.
24.5.2006 12:13 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: Učebnice C
Jak moc se to liší od používání Objective C? Kromě toho, že ObjC se mi líbí podstatně víc. :-D
24.5.2006 14:39 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Učebnice C
Nikoliv, budu to brát jako dva samostatné jazyky. V C bude printf, v C++ to silene s count a >> ;-). Právě kdybych to míchal dohromady, mám C++ jako obálku pro C.
Baník pyčo!
elviin avatar 24.5.2006 14:45 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
Rozbalit Rozbalit vše Re: Učebnice C
Sileny?:) >> muzes pouzivat k vypisu kamkoliv, kompresi, sifrovani, pristupu k remote objektum - alegantni. Kod operatoru je pri prekladu optimalizovanej pro urcity typ streamu.
24.5.2006 15:51 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Učebnice C
Pro mě teď šílené, jelikož mám v hlavě printf a pokud bych se teď začal učit C++, šel bych do objektového modelu a printf by mi zůstalo. A už máme obálku. Proto ty jazyky chci oddělit (C++ se budu učit podle úplně jiné knihy / tutorialu). Já v tom nic špatného nevidím.
Baník pyčo!
24.5.2006 16:12 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: Učebnice C
Jakej "optimalizovanej kód pro typ streamu"? Já myslel, že přetížené operátory jsou normální metody. Jiné metody z optimalizací neprofitují?
msk avatar 24.5.2006 15:11 msk | skóre: 27 | blog: msk
Rozbalit Rozbalit vše Re: Učebnice C
Takhle se naucite pouzivat C++ jako obalku na C kod xD. Nedoporucuji.

Suhlas. Budete akurat zaobjektovavat ceckovy kod. Ja osobne by som siel rovno do C++ a funkcie zo stdlib by som si pozrel v manpages, alebo v tej knizke o C.
23.5.2006 21:45 hugis | skóre: 7 | blog: hlod | Poprad
Rozbalit Rozbalit vše Re: Učebnice C
Herout je dobrý, ale dávam do pozornosti aj Programovací jazyk C priamo od K&R. Tá knižka je legenda a mne sa dosť páči. Vyšlo to pred nedávnom aj v českom preklade...
23.5.2006 21:56 RTOS | skóre: 6
Rozbalit Rozbalit vše Re: Učebnice C
Ja zase doporucuju google ;-)

+ rychle vyhledavani v dokumentech, rejstrik je "out"
+ zdarma
+ hodne (o doooost)

pokud se ti to lepe cte z papiru, dej si ty pdf-ka vytisknout, vyjde te to levneji, nebo nanejvis stejne.

A nezapomen podekovat autorovi ;-)
In God We Trust, Inc.
23.5.2006 22:48 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Učebnice C

Hm, já věděl že jsem na něco zapoměl ;-). Má angličtina je na úrovni... dosaď si nějaké přirovnání... prostě špatná. Jistě, používáním se daná vlastnost jen zdokonaluje, ale zrovna pointery nejsou to, co bych se snažil chápat z anglického textu. A co se týče online českých překladů / tvorby, je situace mizerná. Proto sahám k staré dobré knížce.

A ano, google samozřejmě znám ;-) a využívám ho.

PS: Pro vyhledávání řešení konkretního problému samozřejmě google / angličtina dostačuje a využívám to. Ale teď se chci něco nového naučit.

Baník pyčo!
Josef Kufner avatar 24.5.2006 08:37 Josef Kufner | skóre: 68
Rozbalit Rozbalit vše Re: Učebnice C
Do začátku je ta knížka lepší. Informace v ní jsou ucelené dobře poskládané a pak se i ten google dá efektivněji používat.
Hello world ! Segmentation fault (core dumped)
24.5.2006 12:22 Antonín Kolísek | skóre: 33 | blog: PDA | Vyškov
Rozbalit Rozbalit vše Re: Učebnice C
1/ zvládnutí ukazatelů je základním stavebním kamenem v jazyce C a bez toho není možné v C téměř nic naprogramovat

2/ jakmile se člověk naučí používat dynamickou alokaci, pak prakticky odpadá důvod používat statická pole (mimo možná struktur)

Doporučuji jak už zde bylo několikrát doporučeno učebnici C od Herouta. Dobré je, že na konci každé kapitoly je cvičení, které doporučuji projít a vyřešit. Když projdeš celou knížku a zvládneš všechny cvičení, nemělo by Tě v jazyku C už nic zaskočit. Druhá věc je pak schopnost vyřešit daný algoritmus, ale to je otázka programování a ne volby jazyka.
24.5.2006 14:43 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Učebnice C
Herouta bych si rozhodně koupil, kdybych... nenašel toto http://ib.ihned.cz/knihy/?p=detail&detail_id=2365. A to druhé mě teď láká víc :(. No asi si pustupně koupím vše, vypadá obojí dobře.
Baník pyčo!
18.6.2007 06:17 Tygřík
Rozbalit Rozbalit vše Re: Učebnice C
Mě ukazatele taky dělaly problémy. Ale už jsem je pochopil.Ukazatel se deklaruje jako obyčejná proměnná, jenom její název je uvozen hvězdičkou.Ukazatel je odkaz na jinou proměnnou.Pokud chceme ukazatel donutit ukazovat na nějakou proměnnou, přiřadíme ukazatelu její adresu.To stačí názvu proměnné předsadit ampersand &(na české klávesnici pravý alt+c nebo levý alt+38).A už se ukazuje.Ukazatel se používá tak, že nahrazuje proměnné. Ale již příklad:

void pispole(&px){
int x,*px;//px je ukazatel
int abc[10],pqq[13];
*px=&x;//px ukazuje na x
int i;
for(i=0;i!=12;i++){
printf("%d. polozka tohoto pole je %d",&i,&px[i]);
}
}
A to je asi všechno. Co se týče dereference, tak dereference znamená schopnost toho ukazatele ukazovat.

Založit nové vláknoNahoru

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.