|
JAZYK C
Rozlišuje malé a veľké písmená.
Spôsob spracovania zdrojového programu
Editor *.c tvorba a úpravy zdrojového súboru
Preprocesor (aj vloženie hlavičkových súborov *.h)
Compiler *.objprekladač
*.lis protokol o preklade
Linker *.exe(aj volanie knižníc *.lib)
Debugger odmuchovač - ladiaci program
a toto opakujeme a opakujeme a opakujeme a ...
Vloženie hlavičkového súboru
#include <stdio.h>
Školský klub (družina) ŠK:
Každý program začína hlavičkou
/*
* MENO.Cv.1.0
*
* Stručný popis programu
*
* Ucitel 10.2001
*/
Ak sa program skladá z viacerých súborov, ich mená napr. EDI_KLA.C,
EDI_OBR.C, EDI_TLAC.C súvisia prvými tromi znakmi.
Identifikátory
Kľúčové slová musia byť písané malými písmenami (if, while, ...).
Školský klub (družina) ŠK:
Mená objektov písať malým písmom s využitím _ (view_file, view_menu,
prem_x, ...)
Rozlišovať identifikátory podľa prvých 8 znakov.
Nepoužívať podobné identifikátory (systst, sysstst, ..., prem, PREM)
Mená objektov majú mať význam (plat a nie p1)
Bežne používané identifikátory: i, j, k indexy, parametre cyklov
c, ch znaky
m, n čítače
f, r reálne čísla
p_ začiatok pointeru (p_plat)
s reťazce
Komentáre
/* komentár */
/*
* komentár
*/
Školský klub (družina) ŠK:
Vložiť komentár pred každou logicky ucelenou časťou.
Pri kratších funkciách stačí popis jej funkcie pred definíciou funkcie.
Údajové typy
PASCAL C
integer int
long int(long)
short int(short)
char char
real float
double
long double
Booleovské hodnoty sú reprezentované pomocou celočíselných (int) hodnôt:
nulová hodnota (0) false
nenulová hodn. (1) true
Definícia premenných
Definícia prideľuje typ, meno a pamäť, deklarácia iba typ a meno.
Definovať možno aj vnútri funkcie (lokálna premenná).
Definujeme až za {.
V C sú definície v opačnom poradí ako v Pascale.
PASCAL C
var i :integer; inti;
c, ch :chr; charc, ch;
f, g :real; floatf, g;
Školský klub (družina) ŠK:
Každú premennú definovať na samostatnom riadku a okomentovať.
Globálne premenné definovať od začiatku riadku.
Lokálne definovať na úrovni bloku.
Priradenie a porovnanie
V C je priradenie = miesto := v Pascale.
Priradenie sa stáva príkazom ak je ukončené bodkočiarkou ;
Je možné niekoľkonásobné priradenie (k = j = i = 2). Vyhodnocuje sa
zprava doľava.
V C je porovnanie = = miesto = v Pascale.
Hlavný program
Vždy sa volá main() a musí byť uvedený ako prvý. Ak program tvorí viac
modulov, je main iba v jednom a iba raz.
PASCAL C
program pokus(input, output); main() /* bez bodkočiarky */
var i, j :integer; {
begin inti, j;
i:=5; i = 5;
end. }
Pascalovské begin a end sú v C nahradené { a }. Tieto zátvorky
uzatvárajú aj zložený príkaz a blok.
Za každou { môžu byť definície.
zložený príkaz zoznam príkazov
blok definície premenných + zoznam príkazov
Jazyk C umožňuje, na rozdiel od Pascalu inicializáciu premenných priamo
v definícii.
main()
{
inti = 5,
j = -1;
j = j + i;
}
Školský klub (družina) ŠK:
Každá inicializovaná premenná sa píše do jedného riadku.
Medzi definíciami a príkazmi je prázdny riadok.
Konštanty
celočíselné desiatkové nesmú začínať nulou
celočíselné osmičkové začínajú 0
celočíselné šestnástkové začínajú 0x
znakové ´a´ /* medzi apostrofmi */
reťazcové "reťazec znakov" /* medzi uvodzovkami */
escape sekvencie (napr. pre formátovanie výpisu):
\n nový riadok
\r návrat na začiatok riadku
\f nová strana
\t tabulátor
\b posun doľava
\a pískutie
\\ \
\` `
\0 nulový znak
Aritmetické výrazy
; prázdny príkaz
PASCAL C
div /
mod%
Špeciálne unárne operácie (aplikovať na premennú), ako predpony aj ako
prípony:
++ inkrement
-- dekrement
++premenna inkrementuje pred použitím, vracia zväčšenú hodnotu
premenna++ inkrementuje po použití, vracia pôvodnú hodnotu
Rozšírené priraďovacie operátory (bez medzery!)
premenna += výraz premenna=premenna+vyraz
-= atď.
*=
/=
%=
>>=
<<=
&=
|=
Terminálový vstup a výstup
#include <stdio.h>
getchar() vstup znaku
putchar(premenna) výstup znaku
Obe funkcie pracujú s premennými int, nie char!
#include<stdio.h>
main()
{
intc;
c = getchar();
putchar(c);
putchar(`\n`); /* odriadkovanie */
}
Formátovaný vstup a výstup
scanf(format, &premenna)
printf(format, premenna)
Viď konštanty escape sekvencie pre formátovanie výstupu.
format: "%d" desiatkové číslo signed int
"%ld" desiatkové číslo signed long
"%u" desiatkové číslo unsigned int
"%lu" desiatkové číslo unsigned long
"%f" float
"%x" hexadecimálne malé
"%X" hexadecimálne veľké
"%o" osmičkové
"%s" reťazec
|