Jazyk C je jeden ze základních jazyků, který by každý programátor a vývojář měl znát. Jedná se o jazyk velmi striktní, nízkoúrovňový a silně typový.

Jazyk C velká část studentů “nesnáší”, ale většinou je to proto, že se nesnaží přijmout fakt, že tento jazyk není tak volný jako jazyky jiné. Například PHP je na jazyku C postaveno, avšak není nutné znát jazyk C. Stejně tak JavaScript, Java, C# a další z jazyka C vychází, ale jsou daleko volnější a nejsou tak striktní.

Jazyk C je kompilovaný jazyk a je tedy k němu potřeba překladač.

<aside> 💡 Jazyk C je základ většiny dnešních moderních jazyků, u kterých se uvádí, to že to jsou C-like jazyky, protože z tohoto jazyku vychází.

Často se uvádí jazyk C/C++ nejedná se o jeden jazyk, ale znalost obou dvou, jelikož jakyz C a C++ jsou velmi blízké, je většinou potřeba znát oba.

</aside>

Využití si tento jazyk najde převážně v IOT (embedit systémy, mikropočítače, chytrá domácnost, …) a Operačních Systémech.

<aside> ⚠️ Předtím než budeme psát první programy je nutné:

<aside> ☝

Pokud máte problém pochopit programování, existuje technika, kterou lze pochopit nutný základ jednoduše. Tato technika je vysvětlena na samostatné stránce zobrazené níže - v každém jazyku může být jinak nazvána:

Jak pochopit programování

</aside>

Kde se píše jazyk C a jak se píše (vývojové prostředí = IDE)

Tento jazyk ostatně jako všechny ostatní jazyky se píše v IDE (Integrated development environment). Ovšem nic nebrání ničemu psát kód uvnitř textového editoru jako je třeba Notapad (Windows), TextEdit (Mac), Vim (Linux, Mac). Ovšem psát kód v textovém editoru není zrovna pohodlné.

CLion - JetBrains s.r.o.

CLion - JetBrains s.r.o.

Visual Studio Code - Microsoft

Visual Studio Code - Microsoft

Jazyk C je možné psát i na webu - zkuste si vyhledat C Online Compiler

Správné IDE vám umí i nainstalovat potřebné nástroje nebo poradit co máte dělat, špatné IDE vám moc nepomůže a budete muset vše řešit z hlavy a toho co znáte. Textový editor je formou špatného IDE. Mezi textové editory se řadí i VS Code - IDE se z něj stává v momentě, kdy jej nabušíte pluginama, ale za cenu rychlosti celého VS Code - jde totiž o hybridní webové IDE.

<aside> 💡 Jak vybrat správné IDE (prostředí)?

Před tím, než si hloupě vyberete IDE, prozkoumejte nejprve IDE - Vývojové prostředí a zjistěte co vám každé nabízí.

</aside>

Osobně používám JetBrains IDEs, protože mi vždy nainstalují vše co daný kód potřebuje a mají více jak dokonalou našeptávací techniku a nespočet integrovaných možností a propojení systému - tedy nemusím používat více aplikací = více oken.

VS Code používám jako rychlý editor - tedy pro projekty co chci jen otevřít, spustit skrze příkazový řádek a zvýraznit text. Pro vývoj reálného projektu bych jej osobně nepoužil, jelikož víc času strávím psaním kódu nebo hledáním vhodného pluginu než problémem, který mám v kódu vyřešit.

Jazyk C se většinou píše v snake_case, který je pro tento jazyk standardem. Nic ovšem nebrání psát celý kód například v camelCase.

Pokud si vyberete jeden styl psaní, pište tak celý projekt!

<aside> ☝ Pozor na pojmenování! V ukázce níže a všech následujících je použit jeden typ casů (text cases) - camelCase.

Z ukázky níže: main je psán v camelCase printf je psán v camelCase

Každý jazyk a framework má svůj styl jakým se tato pojmenování musí dodržovat!

Více si přečtěte v: Type Cases

</aside>

Ukázka jazyka C

#include <stdio.h>

int main() {
	// výpis textu
  printf("Hello World!");
  return 0;
}

Vysvětlení základní orientace

#include <stdio.h> - jedná se o vložení knihovny v tomto případě knihovny <stdio.h>. Knihovna je soubor, ve kterém se nacházejí další funkce, které využíváme v kódu, v tomto případě je v této knihovně uložena funkce printf(), která je v kódu níže.

int main() { ... } - je hlavní funkce (první akce), která se zavolá při spuštění programu. Kód bez této funkce nemůže nikdy fungovat a je nefunkční. Uvnitř této funkce se volají další funkce, které jsou napsané v jiných částech programu a knihovnách. Například printf().

// výpis textu Jedná se o jednořádkový komentář, pokud chcete víceřádkový komentář využije /* ... multilene code ... */

/* 
...
... multilene code comment ...
...
 */

// single line comment

printf("Hello World!"); - je funkce, která umožňuje výpis (tisk) zadaného textu na obrazovku počítače. V našem případě konzoli.

return 0; je návratová hodnota funkce int main() { ... }, jelikož na začátku funkce říkáme (int), že tato funkce bude vracet pravě tento datový typ, tedy celé číslo. Proto “vracíme” (return) číslo 0. Zjednodušeně to co nám funkce vrátí když dojde na konec.

Pro vysvětlení syntaxe jazyka doporučuji navštívit w3schools https://www.w3schools.com/c/c_syntax.php

<aside> 💡 Pro pochopení obecného programování není nutné znát jazyk C, ale v případě jeho znalostí, lze jednoduše navázat na libovolný jazyk! Jelikož většina jazyků jsou tzv. C-like jazyky, tedy z jazyka C vycházejí. Proto je také jazyk C stále využíván pro základy programování.

</aside>