Jak se naučit programování C s tímto začátečním projektem

  • Mark Lucas
  • 0
  • 3041
  • 131
reklama

Naučit se programovat je kumulativní zkušenost. Kromě učení se syntaxi zvoleného jazyka se musíte také naučit obecným principům, které používají všechny programovací jazyky.

Porozumění a učení se programování v jazyce C může být skličující, ale existuje několik základních myšlenek, které stojí za to se s nimi seznámit při zahájení. Jednoduchý projekt je skvělý způsob, jak se naučit základy C.

Tak kde byste měli začít? Řeknutím ahoj!

1. Ahoj, svět!

První část téměř každého kurzu kódování je Ahoj světe program. Podrobnější informace o některých způsobech, jak se C liší od jiných jazyků. Začněte tím, že otevřete textový editor nebo textové editory IDE vs. IDE: Který z nich je pro programátory lepší? Textové editory vs. IDE: Který z nich je pro programátory lepší? Výběr mezi pokročilým IDE a jednodušším textovým editorem může být obtížný. Nabízíme několik poznatků, které vám pomohou učinit toto rozhodnutí. a zadejte tento kód:

#include / * Toto je skript Hello World v C * / int main (void) printf ("Hello, World! \ n"); návrat 0; 

Tento krátký kus kódu se vytiskne na konzoli před ukončením programu. Uložte to někde snadno zapamatovatelné jako Ahoj C. Nyní je třeba soubor zkompilovat a sestavit.

Díky tomu běží

Ke spuštění skriptů C obvykle nebudete muset do počítače instalovat žádný další software. Otevřete okno terminálu (nebo příkazový řádek, pokud používáte Windows) a přejděte do adresáře, do kterého jste skript uložili.

Způsob kompilace a spuštění souboru se v jednotlivých systémech liší:

  • Uživatelé systému Windows: Vytvořte spustitelný soubor zadáním cl hello.c a stisknutím klávesy Enter. Tím vytvoříte hello.exe ve stejné složce, kterou můžete spustit zadáním Ahoj.
  • Uživatelé systému Linux a MacOS: Typ gcc -o ahoj hello.c a stiskněte klávesu Enter, aby byl spustitelný, a spusťte jej zadáním ./Ahoj.

Ať už použijete kteroukoli metodu, spuštění skriptu by vám mělo ukázat toto:

Pokud to ve Windows nefungovalo, ujistěte se, že příkazový řádek je spuštěn v režimu správce. V případě systému MacOS budete možná muset nainstalovat Xcode z obchodu App Store a postupujte podle těchto kroků z StackOverflow.

Nyní se podívejme na program po řádku, abychom viděli, jak to funguje, a vylepšili jsme to!

Pod kapotou: Pochopení jazyka C.

Preprocesory

Skript, který jste právě vytvořili, začíná zahrnutím knihovny.

#zahrnout  

První řádek ve skriptu se nazývá a preprocesor. To se provádí před kompilací zbytku skriptu. V tomto případě řekne skriptu, aby použil stdio.h knihovna. Existuje velké množství preprocesorů pro různé úkoly.

Stdio.h se stará o získání vstupů od uživatele programu a o výstup informací zpět k nim.

/ * toto je skript Hello World v C * / 

Tento další řádek je komentář. Lomítko a hvězda říkají kompilátoru, aby ignoroval všechno mezi ním a závěrečnou hvězdou a lomítkem. I když se to může zdát zbytečné, být schopen zanechat sobě i ostatním jasné poznámky o tom, co váš kód dělá, je základním zvykem.

Hlavní funkce

int main (neplatné) 

Každý program C musí mít hlavní funkce. Main je funkce, která vrací celé číslo označené int. Závorky za hlavní jsou pro jeho argumenty, i když v tomto případě to nebere, a proto používáte neplatný klíčové slovo.

Píšete kód, který má být proveden mezi dvěma složenými závorkami.

printf ("Ahoj, svět! \ n"); návrat 0; 

Uvnitř funkce voláte printf () funkce. Stejně jako hlavní(), printf je funkce. Rozdíl je v tom, že printf je funkce v stdio knihovna, kterou jste zahrnuli na začátku.

Printf tiskne cokoli v závorce mezi uvozovky na konzoli. \ n je escape sekvence nazvaná newline, která říká kompilátoru, aby před pokračováním přeskočil na další řádek v konzole.

Tyto řádky končí v středníky, který kompilátor používá k rozdělení jednoho úkolu od druhého. Věnujte zvýšenou pozornost těmto středníkům - chybějící jim je číslo jedna, protože věci se nepovedou správně!

Nakonec se funkce vrací s číslem 0 a program končí. hlavní() funkce musí vždy vrátit celé číslo a návratnost = 0; signalizuje počítači, že proces byl úspěšný.

Porozumění každému kroku tohoto skriptu je skvělý začátek při učení syntaxe C a způsobu práce jazyka.

2. Vytvoření vlastních C funkcí

Můžete si vytvořit své vlastní funkce v C. Namísto tisku Hello World v hlavní funkci vytvořte novou funkci, která vám to udělá za vás.

void print_for_me () printf ("Ahoj, svět! \ n");  

Pojďme to rozebrat.

neplatný je klíčové slovo, což znamená, že následující funkce nic nevrátí.

print_for_me () je název funkce a prázdné závorky ukazují, že k tomu, aby fungovaly, nejsou nutné argumenty. Argument je jakákoli informace, která se předává funkci, aby byla funkční. Později přidáte svůj vlastní argument ke změně výstupu! Poznámka: Toto není totéž jako funkce main (), nad kterou byla použita neplatnost. Tato funkce nemůže brát argumenty, zatímco tento může (ale v tomto případě nemusí).

Blok kódu by vás měl znát - je to jen prohlášení o tisku z původní hlavní funkce.

Nyní můžete tuto funkci volat z hlavní funkce.

int main (void) print_for_me (); print_for_me (); návrat 0;  

Zde můžete vidět výhodu použití vlastní funkce. Spíše než psaní printf (“Ahoj světe! \ n”) pokaždé můžete funkci vyvolat dvakrát.

Teď se to nemusí zdát tak důležité, ale pokud vaše funkce print_for_me obsahovala mnoho řádků kódu, schopnost tak snadno volat je skvělý spořič času!

Toto je základní myšlenka programování, se kterou se setkáte během celého svého vzdělávání. Napište vlastní funkci jednou, spíše než psejte stejné velké kusy kódu znovu a znovu.

3. Použití funkčních prototypů v C

Prototypy jsou jedním z hlavních způsobů, jak se začátečník C liší od ostatních jazyků. V krátkosti, prototyp je jako náhled funkce definované později. Pokud napíšete funkci print_for_me () za hlavní funkci, může se při kompilaci zobrazit upozornění:

Varovná zpráva říká, že kompilátor běžel do funkce print_for_me před tím, než byl deklarován, takže nemohlo být jisté, že bude fungovat správně při spuštění programu.

Kód by stále fungoval, ale varování lze úplně zabránit použitím prototypu.

#include void print_for_me (); int main (void) print_for_me (); print_for_me (); návrat 0;  void print_for_me () printf ("Ahoj, svět! \ n"); 

Při pohledu na celý program můžete vidět prototyp prototypu print_for_me () na začátku programu, ale neobsahuje nic. Prototypová funkce ukazuje kompilátoru, jak by funkce měla vypadat a zda vyžaduje argumenty či nikoli.

To znamená, že když jej zavoláte v hlavní funkci, kompilátor ví, zda je správně volán, a může v případě potřeby vyvolat varování nebo chybu. Tohle může být něco, co se teď zdá divné, ale vědět o nich nyní pomůže v budoucnosti.

Tento program stále funguje bez prototypu, ale je dobré používat jej. Výstup zatím prozatím vypadá stejně, umožňuje jej změnit tak, aby byl osobnější!

4. Předávání argumentů funkcím C

Změna skriptu

V tomto posledním kroku budete požádáni o jméno uživatele a zaznamenáte jeho zadání. Poté ji použijete ve funkci, kterou jste dříve vytvořili. V C nejsou slova známa jako řetězce jako v jiných programovacích jazycích.

Místo toho se jedná o řadu jednotlivých znaků. Symbol pro pole je [] a klíčové slovo je char. Začněte aktualizací funkce prototypu na začátku skriptu:

#include void print_for_me (char name []); 

Nyní kompilátor bude vědět, že funkce později ve skriptu vezme řadu volaných znaků název. Zatím tato postava neexistuje. Aktualizujte svou hlavní funkci a vytvořte ji a použijte ji k uložení uživatelského vstupu:

int main (void) char name [20]; printf ("Zadejte jméno:"); scanf ("% s", jméno); print_for_me (jméno); print_for_me ("Všichni!"); návrat 0; 

První řádek v hlavní vytvoří pole znaků s 20 možnými mezerami nazvanými jméno. Poté je uživatel vyzván k zadání jména pomocí printf. Další řádek používá novou funkci nazvanou scanf který vezme další slovo, které uživatel zadá.

“% s” říká funkci, že by měla ukládat data jako řetězec a volat je název.

Úprava funkce

Nyní, když voláte print_for_me, můžete zahrnout název v závorkách. Na dalším řádku uvidíte, že můžete předávat i další znaky, pokud jsou mezi uvozovkami. To, co je v závorkách, se občas předá funkci print_for_me.

Upravte to nyní, abyste mohli použít nové informace, které jí poskytujete:

void print_for_me (char name []) printf ("Hello"); puts (jméno);  

Zde vidíte, že závorky byly aktualizovány stejně jako prototyp na začátku skriptu. Uvnitř stále tisknete ahoj pomocí printf. Nová funkce je zde staví. Toto je pokročilejší verze printf.

Všechno vložené do závorek bude vytištěno na konzoli a nový řádek ( \ n jste použili dříve) se přidá automaticky.

Uložte a zkompilujte svůj kód stejným způsobem jako dříve. Všimněte si, že můžete program pojmenovat jinak, pokud nechcete přepsat předchozí program. Pojmenoval jsem můj ahoj2:

Jak byste měli vidět, program vezme vstup a použije jej ve funkci před odesláním přednastaveného pozdravu “Každý!” opět dává dva samostatné výstupy stejné funkci.

ABC programování v C

Tento program je jednoduchý, ale některé koncepty v něm nejsou. Pokročilejší kód C musí být napsán velmi dobře, aby se zabránilo pádům. To je důvod, proč si mnozí myslí, že je vynikající jazyk se nejprve učit, protože vnáší dobré návyky novým programátorům.

Jiní si myslí, že učení C ++ je lepším nápadem, protože vychází z C při zachování jeho nižší kontroly nad systémem. (Je třeba zvážit také Rust - je to vzrušující programovací jazyk, který je syntakticky podobný C ++.)

Jedno je jisté: jazyky jako Python jsou mnohem přátelštější pro začátečníky. Pro starý jazyk je C stále používán všude, ale Python může být jazykem budoucnosti. ? Zde je důvod, proč je Python letos nejlepším programovacím jazykem. !




Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.

O moderní technologii, jednoduché a cenově dostupné.
Váš průvodce ve světě moderních technologií. Naučte se, jak používat technologie a pomůcky, které nás každý den obklopují, a naučte se, jak objevovat na internetu zajímavé věci.