Obecné
* je dereferenční operátor, & pak referenční (je to takhle, i když jsem si to vždycky myslel naopak!)
Standardní vstup a výstup
#include
int c, double d;
c = getchar(); // načte JEDEN ZNAK
scanf("%d", &c); // načte číslo
scanf("%lf", &d); // pro double je to takhle!
Soubory - čtení a zápis
FILE *f;
char c, int i;
f = file("cesta/k/souboru", "r");
c = getc(f); // načte jeden znak
fscanf(f, "%d", &i);
EOF - v binárním režimu místo něj používat makro feof(), aby se neskončilo i při čtení bytu xFF
Proměnné - paměťové třídy a jejich modifikátory
- auto - lokální proměnné
- extern - definovaná v jiném modulu
- static - globální proměnné jsou viditelné jen v daném modulu; lokální uchovají hodnotu při opakovaném volnání fce (klasika - Java)
- register - pokud možno tak by měl kompilátor využít registr procesoru
A modifikátory:
- const - po přiřazení hodnoty se hodnota nesmí dále měnit
- volatile - proměnné může být změněna zvenčí (asynchronně)