Programovací jazyk "C".

Počítače stolní, notebooky, tablety, tiskárny, scanery a vše, co nějak souvisí s PC

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
Brozicek
Příspěvky: 1469
Registrován: 07 lis 2005, 01:00
Bydliště: Studénka

Programovací jazyk "C".

#1 Příspěvek od Brozicek »

Na střední škole elektrotechnické má vnuk potíže s učenim jazyka C v předmětu programování.
Chci mu nějak pomoci, ale s jazykem C nemám absolutně žádné zkušenosti.
Napsal a odladil jsem několik programů v Asembleru pro procesor Z80 v počítači Sinclair. Znal jsem Basic pro Sinclair.
Programoval jsem složitější technické aplikace pro Makra v EXCEL v jazyku VBA.
V jazyku C v prostředí Windows 10 jsem absolutní laik. Snažím se něco na moje "stará kolena" naučit a pochopit. Vygooglil jsem si mnoho popisů a návodek k tomuto jazyku.

Pro praktické procvičování a zkoušení jednoduchých prográmků bych potřeboval nainstalovat do svého PC W10 32 bitů nějakou aplikaci jako vývojové prostředí jazyka C s překladačem. Hledal jsem něco na Slunecnice.cz a Stahuj.cz, ale nedokázal jsem si vybrat. Většinou jsem skončil na tom, že u programu bylo napsáno "Toto na vašem počítači asi nespustíte", nebo pokus o instalaci vybraného programu skončil hlášením, že "Můj procesor není podporován".

Rád si nechám poradit, co mám do svého PC nainstalovat, abych se mohll učit a zkoušet různé krátké programy. Následně pak vnukovi pomáhat a naučené instrukce a příkazy s ním prakticky procvičovat. Zdá se mi, že jejich učitel ve škole nedokáže studenty motivovat a jazyk učit praktickou, a také zábavnou formou.
Předem děkuji.

nixdorf
Příspěvky: 540
Registrován: 06 kvě 2017, 02:00

#2 Příspěvek od nixdorf »

Čo sa týka učenia sa céčka, pozri starého dobrého Herouta. IDE (vývojové prostredie) už podľa chuti... od vylepšeného poznámkového bloku až po Visual Studio. I bezplatná community edícia je vcelku žrút a moloch na malé veci, ale keď si zvykneš, ľahko sa v tom vyvíja, odlaďuje, refaktoruje, špekuluje... kopa pluginov (zásuvných modulov) k tomu je, a podobne.
Samozrejme, nič ti nebráni písať kód v poznámkovom bloku a spúšťať kompilátor a linker z príkazového riadka, či vlastné build skripty. Vyskúšaj viacero možností, vyberieš si sám. Pod Windows máš "všetko v jednom" práve spomínané Visual Studio, prípadne, ak inklinuješ k *nix/POSIX, kukni binutils/gcc, pod Windows nazvané ako MinGW.

Akurát pozor na príponu súboru - VS a MSVC++ kompilátor štandardne prekladá jazyk C++, na čisté céčko treba nazvať zdrojáky s príponou .C, alebo patrične nastaviť možnosti kompilácie. Stroustrupove C++ vzniklo ako idea vylepšeného jazyka C o objektovo orientovanú paradigmu, dnes sú to dva kompletne odlišné jazyky...

Uživatelský avatar
pocitujlasku
Příspěvky: 1757
Registrován: 12 pro 2005, 01:00

#3 Příspěvek od pocitujlasku »

ako prve skus zistit, ake vyvojove prostredie pouzivaju v skole.
Samotny jazyk nie je az taky zlozity, ak si robil v asm a basic, tak to pochopis velmi rychlo
No vidis, a tak si sa bal

termit256
Příspěvky: 10071
Registrován: 06 pro 2007, 01:00

#4 Příspěvek od termit256 »

Jen pocitej s tim, ze instalace VS spolkne nekolik GB. Pokud jsi byl zvykly psat v pspadu asm, budes nemile prekvapen.

Uživatelský avatar
Brozicek
Příspěvky: 1469
Registrován: 07 lis 2005, 01:00
Bydliště: Studénka

#5 Příspěvek od Brozicek »

nixdorf píše:....... IDE (vývojové prostredie) už podľa chuti... od vylepšeného poznámkového bloku až po Visual Studio. .......
Visual Studio požaduje 64 bitový operační systém, který můj PC nemá. Jak píšeš, je určeno pro C++. I kdybych se dostal k 64 bitovému PC, budu mít další problémy pro jazyk C. Také nerozumím tomu co je to "Vylepšený poznámkový blok". Právě v tom IDE "podle chuti" mám problém, nevím co je na jídelníčku, abych na to měl chuť.

Nepotřebuji psát složité programy v jazyku C ani v C++. Chci si jen s vnukem vytvářet krátké cvičné sekvence z instrukcí, které se ve škole učí, ty přeložit a zkusit je spustit, připadně odladit naše vlastní chyby.

Není k dispozici nějaké i zastaralé vývojové prostředí použitelné v 32 bitovém počítači, které by nám posloužilo ke zkoušení a hraní si s "C". Psaní zdrojového textu v jazyku C se nebojím, ale napsaný zdrojový text je mi k ničemu pokud si neověřím, že program dělá to, co jsem chtěl naprogramovat, a nenajdu a nevyladím vlastní chyby.

Naposledy ve škole probírali "přepínač SWITCH" a k tomu je jako vzor krátký prográmek k vyhodnocení náhodného házení kostkou.

switch (selektor) {
case hod_1: příkaz_P1; break;
case hod_2: { příkaz_Q1; příkaz_Q2; break; }
case hod_3: { příkaz_R1; příkaz_R2; příkaz_R3; break; }
// sekvenci příkazů uzavřeme mezi složené závorky { … }
default: příkaz_D1; break; //na posledním řádku nemusí být break
}

Jak bych mohl ve svém počítači tento prográmek pro házení kostkou přeložit a cvičné spustit?
Přílohy
Házení kostkou.png

petrfilipi
Příspěvky: 2551
Registrován: 13 zář 2005, 02:00

#6 Příspěvek od petrfilipi »

Řeším teď něco podobného, jen s vlastním synem.
Jako překládač používá syn on-line na této adrese.
Včera jsem nainstaloval Code::Block. Taky jsem našel tento free kompilátor.
Učebnice máme od P. Herouta v posledním vydání. Ale našel jsem hezký online kurz zde.

Uživatelský avatar
MiloPS3
Příspěvky: 259
Registrován: 07 srp 2010, 02:00

#7 Příspěvek od MiloPS3 »

Kdyz potrebuju neco vyskouset tak pouzivam taky GDB Online
nez otevru naky IDE zalozim projekt , tohle je online , nic nestahujes a ta kostka v nem funguje...

Uživatelský avatar
bdn
Příspěvky: 436
Registrován: 16 led 2020, 01:00

#8 Příspěvek od bdn »

Mrkni tady: C překladač pro Windows zdarma 64MB
http://www.smorgasbordet.com/pellesc/

Uživatelský avatar
lesana87
Příspěvky: 3296
Registrován: 20 zář 2014, 02:00

#9 Příspěvek od lesana87 »

Pod Windows používám Tiny C Compiler https://bellard.org/tcc/ a programy píšu v PSPadu, má zvýrazňovač syntaxe.

Uživatelský avatar
samec
Příspěvky: 3692
Registrován: 19 pro 2017, 01:00

#10 Příspěvek od samec »

Brozicek píše:Hledal jsem něco na Slunecnice.cz a Stahuj.cz, ale nedokázal jsem si vybrat. Většinou jsem skončil na tom, že u programu bylo napsáno "Toto na vašem počítači asi nespustíte", nebo pokus o instalaci vybraného programu skončil hlášením, že "Můj procesor není podporován".
Toto nerob, ak si nechceš zavírovať počítač. Vždy ťahaj programy z oficiálnych stránok.

Nainštaluj si DevCpp. Na disku zaberá len niekoľko MegaBajtov a v pohode nahradí aj niekoľko GigaBajtové visual studio od microsoftu.
https://www.bloodshed.net/

C jazyk je veľmi jednoduchý, má len niekoľko príkazov. Všetko ostatné sú funkcie.
Podľa mňa najlepšia kniha je C programming Language od dvojice autorov Kernighan & Ritchie. S touto knihou sa dá z nuly zvládnuť kompletné C za dva týždne. Existuje aj čeké vydanie.
https://kremlin.cc/k&r.pdf

Uživatelský avatar
Brozicek
Příspěvky: 1469
Registrován: 07 lis 2005, 01:00
Bydliště: Studénka

#11 Příspěvek od Brozicek »

Dík za užitečné rady. Nyní mám z čeho vybírat "podle chuti".
Už jsem vyzkoušel ten GDB Online na dvou zdrojových textech C opsaných z nějaké učebnice C z internetu.
Vyzkouším i další odkazy z rad kolegů.
Přesně to jsem jako laik přes jazyk C potřeboval.

petrfilipi
Příspěvky: 2551
Registrován: 13 zář 2005, 02:00

#12 Příspěvek od petrfilipi »

Taky jsem u syna narazil na to, že má nepřekonatelný problém s bílým pozadím vývojového prostředí. Okno, kam se píše kód, lze třeba jednoduše změnit. Ale to okolí, konkrétně v aplikaci Code::Block pod Windows, nastavit nelze.

nixdorf
Příspěvky: 540
Registrován: 06 kvě 2017, 02:00

#13 Příspěvek od nixdorf »

Brozicek píše:Visual Studio požaduje 64 bitový operační systém, který můj PC nemá.
To nie je pravda - všetky IDE boli tridsaťdvabitové až na poslednú verziu, teda 2022. Nik ti nekáže na starší stroj inštalovať najnovšie verzie - cieľová platforma je v tvojom prípade tak či tak x86 Win32.
Brozicek píše:Jak píšeš, je určeno pro C++.
Nie, nie je to primárne určené (iba) pre C++; VS zvládne tridsaťšesť programovacích jazykov, jazyk "C" [sic] je jedným z nich. To, čo som spomenul v mojom príspevku, je špecifikum kompilátora MS, nie vývojového prostredia ako takého.
Brozicek píše:Také nerozumím tomu co je to "Vylepšený poznámkový blok"
Textový editor s vylepšeným formátovaním, zvýraznením syntaxe (na rozdiel od moderných jazykov, céčko vie byť hodne neprehľadné), code completion, širokou podporou zásuvných modulov, hore spomenuté nastavenie farebných schém editora, a tak ďalej, podobným štýlom. Teda napríklad Notepad++ (z angl.: note - poznámka, pad - blok, ++ možno chápať ako vylepšenie, ergo, vylepšený poznámkový blok, chápeme sa). Tiež VSCode /nepliesť s VS/, PSpad či iné.
Oproti textovému editoru je IDE (ako napr. VS) už plnohodnotným vývojovým prostredím, obsahujúcim editor, kompilátor, linker, odlaďovač, build a X ďalších vecí v jednom balení na drvivú väčšinu vecí, s ktorými sa stretneš.

Začiatočníkovi veľa pomôže napríklad Intellisense, súčasť VS a iných schopných IDE, ktoré už počas písania kódu odhalí chyby, ktoré by neprešrotil kompilátor, prípadne veci, s ktorými sa potenciálne zarobí na prúser pri behu aplikácie, ale kompilátorom a linkerom v pohode prejdú... (v závislosti na nastavenom warning levelu). Prípadne rovno opraví syntaktické chyby.
Ostrieľanému harcovníkovi čo zažil BASIC aj ENIAC sa i tak najlepšie programuje na papier, a žiadne takéto zbytočné serepetičky nepotrebuje. :wink:
Brozicek píše:Jak bych mohl ve svém počítači tento prográmek pro házení kostkou přeložit a cvičné spustit?
Vo VS cez menu Súbor -> Nový projekt -> Windows konzolová aplikácia. Projekt nazveš "ahoj", akurát len súbor premenuješ z ahoj.cpp na ahoj.c, aby si nebol rozhýčkaný benevolentnosťou kompilátora. Potom už len Ctrl+C, Ctrl+V. Zmačkneš F5 a beží to, jednoduššie to snáď už nemôže byť.
Ak musíš okrem toho v iných prostrediach riešiť rôzne zvláštne chyby znemožňujúce build, či nastavenie rôznych ciest a parametrov ku kompilátoru, linkeru, knižniciam, alebo pri odlaďovaní napríklad cestu k symbolom - keď ti niečo nefunguje, chceš aplikáciu pozastaviť a v danom momente si pozrieť obsah premenných, prípadne krokovať po riadku, po funkciách - tak holt, kto chce kam... :wink:
Brozicek píše:Není k dispozici nějaké i zastaralé vývojové prostředí použitelné v 32 bitovém počítači, které by nám posloužilo ke zkoušení a hraní si s "C"
Áno, je. Stiahni si DosBox, tým pod Windows 10 rozbeháš i Turbo C z 1988, dúfam že dostatočne zastaralé. Na strednej sme mali takto rozbehaný Pascal, a to sa písal 2012 rok Pána. Len pozor, aby si potom vnuka zbytočne neučil čo je segmentácia, reálny režim, konvenčná pamäť a aký je rozdiel medzi near a far pointrom /staré vydania Herouta/, to by možno žasol aj jeho učiteľ...

Nedozvedeli sme sa, v akom prostredí vyučujú tvojho vnuka, a sylaby predmetu, tzn. do akej miery má ovládať jazyk. Ak má skúška zavŕšiť výpisom "ahoj" na štandardný výstup, tak ano, tam žiadne IDE, debugger či vôbec Visual Studio ozaj netreba, mea culpa. I keď... i jedno neopatrné printf() stačí na zrútenie celej aplikácie. Neboj sa, zistíš. Nech sa darí.

Uživatelský avatar
pocitujlasku
Příspěvky: 1757
Registrován: 12 pro 2005, 01:00

#14 Příspěvek od pocitujlasku »

notepad++ odporucam.
ma tam dokonca moznost si nastavit, aby si z neho vedel spustit kompilator, takze nemusis to kompilovat rucne, ale jednym klikom v programe.
No vidis, a tak si sa bal

Uživatelský avatar
Brozicek
Příspěvky: 1469
Registrován: 07 lis 2005, 01:00
Bydliště: Studénka

#15 Příspěvek od Brozicek »

Ve škole používají Code Blocks. Stáhl jsem si ho a nainstaloval.

Myslím, že už mám dost informací, které jsem potřeboval. Už je jen na mě, abych se učil sám a pomáhal s učením vnukovi.
Ještě jednou díky všem.

Odpovědět

Zpět na „Výpočetní technika“