Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Základní pojmy v jazyce C
Verze Základní pojmy v jazyce C 2 A1PRG - Programování - seminář Ing. Michal Heczko
2
Agenda Identifikátory Klíčová slova Komentáře Konstanty a proměnné
Řídicí sekvence
3
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
4
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)
5
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
6
Klíčová slova auto double int struct break else long switch case enum
register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if static while
7
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)
8
Komentáře 2 typy komentářů: Jednořádkové komentáře:
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
9
Komentáře Příklad: #include <stdio.h> #include <conio.h>
int main(void) { int x = 5; int y = 6; printf(”Výsledek: %d”,x*y); getch(); return 0; }
10
Komentáře Příklad: /* Popis: Program pro sečtení dvou čísel
Autor: Michal Heczko */ #include <stdio.h> #include <conio.h> … …
11
Komentáře … … int main(void) { // definice proměnných int x = 5;
int y = 6; // výpis součinu printf(”Výsledek: %d”,x*y); /* čeká na ukončení programu */ getch(); return 0; }
12
Konstanty a proměnné Proměnná Konstanta
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
13
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
14
Datové typy Datový typ Velikost [b] Popis char 8 Znak short 16
Krátké celé číslo int 16/32 Celé číslo long 32 Dlouhé celé číslo float Reálné číslo double 64 Reálné číslo s dvojitou přesnosti long double 80 Velmi dlouhé reálné číslo
15
Datové typy Klíčové slovo Popis signed
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.
16
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
17
Rozdělení konstant Celočíselné Reálné Znakové Řetězcové
18
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)
19
Celočíselné konstanty
Desítkové #define MINIMUM 8000 Osmičkové (oktalové) #define MINIMUM Šestnáctkové (hexadecimální) #define MINIMUM 0x1f40
20
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
21
Reálné konstanty 2 způsoby zápisu: Základní datový typ: double
Přímý tvar Semilogaritmický tvar Základní datový typ: double Přípony: Pro float … f nebo F Pro long … l nebo L
22
Reálné konstanty Přímý tvar #define MINIMUM 2.1 #define PI 3.14
Semilogaritmický tvar #define MAXIMUM 5e32 #define HODNOTA -3e32
23
Znakové konstanty Jeden znak dané kódové tabulky (nejčastěji ASCII)
Znak je uzavřen mezi 2 apostrofy
24
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
25
ASCII tabulka tisknutelné znaky: řídící (netisknutelné) kódy:
písmena, číslice, jiné znaky (závorky, matematické znaky (+-*/% …), interpunkční znaménka (,.:; …), speciální …)) řídící (netisknutelné) kódy: původně určeny pro řízení periferních zařízení (např. tiskárny nebo dálnopisu).
26
ASCII TABULKA
27
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)
28
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
29
Ř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.
30
Příklad ekvivalentních zápisů
Ř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“
31
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: scanf(řetězec, &proměnná1, …, &proměnnáN);
32
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ězce c Znak d Číslo int, desítkové znaménkové u Číslo int, desítkové neznaménkové x Číslo int, šestnáctkové malými písmeny X Číslo int, šestnáctkové velkými písmeny o Číslo int, osmičkové
33
Terminálový vstup a výstup
Znak řídícího řetězce printf scanf ld Číslo long, desítkové znaménkové f Číslo float lf Číslo double s řetězec
34
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);
35
A1PRG-s 02. Základní pojmy Děkuji za pozornost Ing. Michal Heczko
218/U3 Prezentace k dispozici na
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.