35
A1PRG - Programování - seminář Ing. Michal Heczko [email protected] Základní pojmy v jazyce C 2 Verze 2009.02

Základní pojmy v jazyce C

  • Upload
    yul

  • View
    41

  • Download
    2

Embed Size (px)

DESCRIPTION

Verze 2009.02. Základní pojmy v jazyce C. 2. A1PRG - Programování - seminář Ing. Michal [email protected]. Agenda. Identifikátory Klíčová slova Komentáře Konstanty a proměnné Řídicí sekvence. Identifikátory. Jména funkcí, proměnných, konstant, ... - PowerPoint PPT Presentation

Citation preview

Page 1: Základní pojmy v jazyce C

A1PRG - Programování - seminář

Ing. Michal Heczko [email protected]

Základní pojmy v jazyce C2

Verze 2009.02

Page 2: Základní pojmy v jazyce C

Agenda

Identifikátory Klíčová slova Komentáře Konstanty a proměnné Řídicí sekvence

Page 3: Základní pojmy v jazyce C

Identifikátory

Jména funkcí, proměnných, konstant, ... Důležité: jazyk C je case-sensitive, tj. je

třeba dávat pozor na malá a velká písmena Vysvětlení

IDENTIFIKATOR ≠ identifikator ≠ Identifikator

Page 4: Základní pojmy v jazyce C

Pravidla pro tvorbu identifikátorů

Skládají se z písmen, číslic nebo podtržítka

Dle normy ANSI max. 31 znaků Nesmí začínat číslicí Mohou obsahovat pouze znaky bez

diakritiky Nesmí obsahovat mezery Nesmí se shodovat s klíčovým slovem

(více dále)

Page 5: Základní pojmy v jazyce C

Klíčová slova

Mají v jazyce C speciální význam a nelze je používat jako uživatelem definované identifikátory (např. jména funkcí, proměnných, konstant atd.)

Zapisují se vždy malými písmeny

Page 6: Základní pojmy v jazyce C

Klíčová slova

auto double int struct break else longswitch case enum register typedef char externreturn union const float short unsigned continuefor signed void default goto sizeof volatiledo if static while

Page 7: Základní pojmy v jazyce C

Komentáře

Jsou důležitou částí zdrojového kódu Slouží k snadnější orientaci v programu Vhodné průběžné psaní komentářů Mohou obsahovat znaky národní

abecedy Lze je umístit do libovolné části

zdrojového kódu (při zpracování jsou odstraněny preprocesorem)

Page 8: Základní pojmy v jazyce C

Komentáře

2 typy komentářů: Víceřádkové komentáře:

Uvozují se znaky: /* pro začátek komentáře */ pro konec komentáře

Jednořádkové komentáře: Uvozují se znaky // na začátku řádku

Page 9: Základní pojmy v jazyce C

Komentáře

Page 10: Základní pojmy v jazyce C

Komentáře

Page 11: Základní pojmy v jazyce C

Komentáře

Page 12: Základní pojmy v jazyce C

Konstanty a proměnné

Proměnná datový objekt, jehož hodnota se

v průběhu programu může měnit

Konstanta datový objekt, jehož hodnota v průběhu programu nelze měnit

Page 13: Základní pojmy v jazyce C

Proměnná

Datový objekt, jehož hodnota se v průběhu programu může měnit Obecný zápis:

datovýtyp jméno;datovýtyp jméno = hodnota;

Příklad:int i = 2; // deklarace proměnné s výchozí hodnotou

int i; // deklarace proměnné

i = 2; // uložení čísla 2 do prom. i

Page 14: Základní pojmy v jazyce C

Datové typy

Datový typ Velikost [b] Popischar 8 Znakshort 16 Krátké celé čísloint 16/32 Celé číslolong 32 Dlouhé celé číslofloat 32 Reálné číslodouble 64 Reálné číslo

s dvojitou přesnosti

long double 80 Velmi dlouhé reálné číslo

Page 15: Základní pojmy v jazyce C

Datové typy

Klíčové slovo Popissigned Uvádí se před datovým

typem. Znamená se znaménkem. Výchozí, pokud není uvedeno.

unsigned Uvádí se před datovým typem. Znamená bez znaménka.

Page 16: Základní pojmy v jazyce C

Konstanta

Datový objekt, jehož hodnota se v průběhu programu nemění

Pro definici konstant používáme direktivu #define

Obecný zápis: #define jméno hodnota

Příklad:#define POCET 2

#define PI 3.14

Page 17: Základní pojmy v jazyce C

Rozdělení konstant

Celočíselné Reálné Znakové Řetězcové

Page 18: Základní pojmy v jazyce C

Celočíselné konstanty

3 typy: Desítkové – posloupnost číslic, z nichž

první nesmí být 0 Osmičkové (oktalové) – číslo 0

následované posloupností osmičkových číslic

Šestnáctkové (hexadecimální) – číslo 0 následované znakem x nebo X posloupností šestnáctkových číslic (0 – 9, a – f, A – F)

Page 19: Základní pojmy v jazyce C

Celočíselné konstanty

Desítkové #define MINIMUM 8000

Osmičkové (oktalové) #define MINIMUM 017500

Šestnáctkové (hexadecimální)

#define MINIMUM 0x1f40

Page 20: Základní pojmy v jazyce C

Celočíselné konstanty

U datového typu long znak L nebo l na konci (doporučuje se pouze velké, možná záměna s 1).

U nezáporného typu znak U nebo u na konci.

Př.:#define MINIMUM 8000LU

Page 21: Základní pojmy v jazyce C

Reálné konstanty

2 způsoby zápisu: Přímý tvar Semilogaritmický tvar

Základní datový typ: double Přípony:

Pro float … f nebo F Pro long … l nebo L

Page 22: Základní pojmy v jazyce C

Reálné konstanty

Přímý tvar #define MINIMUM 2.1

#define PI 3.14

Semilogaritmický tvar #define MAXIMUM 5e32

#define HODNOTA -3e32

Page 23: Základní pojmy v jazyce C

Znakové konstanty

Jeden znak dané kódové tabulky (nejčastěji ASCII)

Znak je uzavřen mezi 2 apostrofy

Page 24: Základní pojmy v jazyce C

ASCII tabulka

Kódování znaků ve VT American Standard Code for Information

Interchange Vychází z ní většina standardů pro

kódování textu v euro-americké zóně V základu 7-bitový (128 platných znaků).

8-bitové rozšíření pro znaky národních abeced

Page 25: Základní pojmy v jazyce C

ASCII tabulka

tisknutelné znaky: písmena, číslice, jiné znaky (závorky,

matematické znaky (+-*/% …), interpunkční znaménka (,.:; …), speciální znaky(@$~ …))

řídící (netisknutelné) kódy: původně určeny pro řízení periferních

zařízení (např. tiskárny nebo dálnopisu).

Page 26: Základní pojmy v jazyce C

ASCII TABULKA

Page 27: Základní pojmy v jazyce C

Znakové konstanty

Způsoby zápisu: ‘\ddd’ , kde ddd je osmičkové číslo

odpovídající kódu znaku ‘\xHH’ nebo ‘\XHH’, kde hh je

šestnáctkové číslo odpovídající kódu znaku

‘z’, kde z je znak dané kódové tabulky ‘\e’, kde e je znak odpovídající tzv.

escape sekvenci (neboli řídící sekvence)

Page 28: Základní pojmy v jazyce C

Znakové konstanty

Sekvence

Hodnota

Význam

\n 0x0A Nový řádek\r 0x0D Návrat na začátek řádku\f 0x0C Nová stránka\t 0x09 Tabulátor\b 0x08 Posun doleva\a 0x07 Písknutí\\ 0x5C Zpětné lomítko\’ 0x2C Apostrof\0 0x00 Nulový znak

Page 29: Základní pojmy v jazyce C

Řetězcové konstanty

Ohraničené uvozovkami Možno použít všechny způsoby zápisu

znakových konstant Možno použít znaky národní abecedy Př.:#define JMENO “Michal“

#define HLAVNI_MESTO “Praha“

Sekvence

Hodnota

Význam

\“ Uvozovka.

Page 30: Základní pojmy v jazyce C

Řetězcové konstanty

Zřetězování dlouhých řetězců oddělených mezerami, tabulátory nebo novými řádkami

Příklad ekvivalentních zápisů

#define MUJTEXT “Velmi dlouhý řetězec“

#define MUJTEXT “Velmi “ “dlouhý “ “řetězec“

Page 31: Základní pojmy v jazyce C

Terminálový vstup a výstup

Výpis na terminál: Obecný zápis:

printf(řetězec, proměnná1,…,proměnnáN);

Vstup z terminálu: Obecný zápis:

scanf(řetězec, &proměnná1, …, &proměnnáN);

Page 32: Základní pojmy v jazyce C

Terminálový vstup a výstup Řídící řetězec formátu

Uvozuje se znakem %, za kterým následují další znaky dle následující tabulky:

Znak řídícího řetězcec Znakd Číslo int, desítkové znaménkovéu Číslo int, desítkové neznaménkovéx Číslo int, šestnáctkové malými

písmenyX Číslo int, šestnáctkové velkými

písmenyo Číslo int, osmičkové

Page 33: Základní pojmy v jazyce C

Terminálový vstup a výstup

Znak řídícího řetězce

printf scanf

ld Číslo long, desítkové znaménkovéf Číslo floatlf Číslo doubles řetězec

Page 34: Základní pojmy v jazyce C

Terminálový vstup a výstup Příklady:

printf(“Znak %c ma ASCII kod %d (%XH)\n“,’*’, ’*’, ’*’);

printf(“Je přesně %2d:%2d\n“,hodiny, minuty);

printf(“Hodnota čísla PI je %4.2f\n“,PI);

printf(“Zadejte libovolne desetinne cislo\n“);scanf(“%f“,&x);

printf(“Zadejte 2 cela cisla\n“);scanf(“%d %d“,&a,&b);

Page 35: Základní pojmy v jazyce C

A1PRG-s 02. Základní pojmy

Děkuji za pozornost

Ing. Michal Heczko

[email protected]

218/U3

Prezentace k dispozici na http://vyuka.fai.utb.cz