Výtah z Učebnice jazyka C
|
|
- Ivo Konečný
- před 8 lety
- Počet zobrazení:
Transkript
1 Výtah z Učebnice jazyka C bodik@{civ.zcu.cz,4safety.cz}
2 DAY 1&2 Základy P. Herout: Učebnice jazyka C Příklady z učebnice Různé ostatní dovednosti
3 1. Úvod Programovací jazyk (1978) Brian W. Keringham a Denis M. Rritchie Lowlevel > univerzální Přímo pracuje pouze se základními datovými typy To umožňuje oddělení strojově závislých implementací od jazyka do knihoven (nebo libc) lit/big endian, mm, procesy, io,... Pro každý počítač je pak potřeba vytvořit příslušný překladač ANSI C (88) ISO/IEC 9899:1999 kosmetické úpravy, malá podpora Pavel Herout: Učebnice Jazyka C ISBN
4 2. Zpracování programu v C Vytvořit Přeložit Sestavit Spustit
5 Štábní kultura Soubory - zdrojové (c,cpp), hlavičkové (h,hpp) Identifikátory Casesensitive Podtržítko Lze použít k dělení názvů _pom NE (systémové věci) pom_x,pbuf,p_buf,p_buf Komentáře /* toto je komentář */ // toto není komentář ansi (c99)
6 3. První začátky Jednoduché datové typy int, short int, long int <1b,8b> Znaménkové < -2^(n-1) ; 2^(n-1) -1 > Neznaménkové < 0 ; 2^(n)-1 > char (snad skutečně 1byte) wchar C nemá boolean (nahradit int) operátor sizeof vrací velikost typu
7 Float a jeho zobrazení Přesnost na 64ti bitech není nekonečný Celé číslo sum(2^x2,2^x1,2^x0) Desetinná část sum(2^-1, 2^-2, 2^-3) Cvičení 4.7
8 Velikosti základních datových typů Linux zzz serv #1 SMP x86_64 GNU/Linux char 1 short 2 int 4 long 8 float 4 double 8 long double 16 Windows 7 Enterprise 32b char 1 short 2 int 4 long 4 float 4 double 8 long double 8 SunOS xxx 5.9 Generic_ sun4u sparc SUNW char 1 short 2 int 4 long 4 float 4 double 8 long double 16 Linux yyy #1 SMP i686 GNU/Linux char 1 short 2 int 4 long 4 float 4 double 8 long double 12
9 Proměnné Deklarace svázání jména a typu extern int j; Definice svázání jména a paměti int i; Přiřazení i = 5; (porovnání ==!!!) Konstatny Desítkové 6 12 Osmičkově Hexa 0x3A 0xCD 0x01 Znakové -- 'a'
10 Aritmetika a operátoři Unární + Binární + * / (reálné) / (celoč.) % (zbytek) Speciální ++ Přiřazovací += = *= >>= &= =
11 4. Terminálový V/V i/o nejsou součástí jazyka, dovoluje to ponechat práci knihovně, která může být pro každou architekturu jinak implementovaná (oddělení strojově závislých částí) libc, glib-c,... Znakově -- putchar(int),int getchar() (EOF) Formátově printf(), scanf() Formátovací řetězec, str 42 %c %d %u %02x %f Řádkově fgets(), fputs() Defaultně řádkově bufferován? Čeká se na \n Bílé znaky se zahazují, přebývající zústávají v bufferu...
12 Základní program cv4_13 scanf, printf, scitani, deleni
13 Základní program cv4_13 scanf, printf, scitani, deleni (vs /usr/bin/bc)
14 5. Řídící struktury Rozhodování > Booleovské výrazy x y && XOR ==!= &&! < <= > >= Priorita str 49 Zkrácené vyhodnocování podmínek if (y!=0 && z = x/y)... && vs & vs 1 && 4 > 1 1 & 4 > 0 Podmíněný výraz podmínka? vyrazt : vyrazf;
15 Větvení a iterace if, if-else Přiřazení je vyraz! if(a = 5) vs if(a == 5) while do while for switch goto (hell) return
16 Generování čísel Spočítá počty velkých a malých písmen Vypíše sudá čísla ze zadaného intervalu
17 6. V/V souborů Bufferované I/O (setvbuf()) FILE *fr, fopen, fclose, fgetc, fputc, fscanf, fprintf fgets() Interpretuje konce řádků '\n' (CR LF, CRLF) EOF vs feof(); Defaultně otevřené proudy stdin, stdout, stderr ungetc
18 V/V příklady Vygeneruje 20 násobků PI na 2 desetinná místa Spočítá počrt rozdílných bytů
19 7. Typová konverze Implicitní, explicitní Je nutné mít na paměti že konverze probíhají a je třeba s nimi počítat str 87 char c; int i; double g; i = 'A'; // konverze na int (výsledek je ord) i = 3.8; // i -> 3 i = g * c; c > int > double double * double > double prirazeni > int
20 8. Preprocesor jazyka C bin/cpp Zpracovává makra #define MAXBUF 1 #include <stdio.h> #include <moje.h> Vyhazuje komentáře Připravuje podmíněný překlad #ifdef #if defined
21 Ukázky cpp
22 9. Funkce a práce s pamětí Alokace paměti Vždy inicializovat ručně Statická V datové oblasti pokud je známa velikost dat při překladu globální proměnné, konstanty,... Dynamická Na haldě (heap) Zásobníku (stack) Lokální proměnné funkcí Paměťové třídy Auto lokální prom. Extern globalní prom. Typové modifikátory Const (!= Static) Volatile prom. je modifikována zvenčí Static Glob s omezenou viditelností Local zachovávají hodnotu Register někdy na CPU
23 Funkce a prototypy Deklarace vs definice modifikátor static viditelnost na lokální objekt Parametry volání jsou vždy předávány jako hodnota V C se vždy vrací hodnota (žádné procedury) void swap(int a, int b); návratová hodnota nás nezajímá void swap(int a, int b) { int p; p=a; b=a; a=p; } /* vysledek vsak neni zadny, dej se odehraje pouze na lokalnim stacku funkce */
24 Oddělený překlad a moduly Paměťové třídy určují viditelnost proměnných a dat auto, static, extern,... Je vhodné program členit do logických celků Ne všechny moduly potřebují vědět vše o zbytku programu, využívat všechny globální proměnné a nepoužívají všechny datové typy Program je typicky rozdělen na části/moduly, které exportují (zpřístupňují) do zbytku programu pouze části svých dat Hlavičkové soubory s deklaracemi
25 Oddělený překlad 1 Pokud ovládáme rozložení programu do modulů a umíme rozložit potřebné kusy kódu a paměti můžeme využívat odděleného překladu jednotlivých modulů (str )
26 Oddělený překlad 2
27 Oddělený překlad 3
28 Rekapitulace Jazyk C Štábní kultura Zobrazení dat (int vs float) Proměnné Řídící struktury Terminálový V/V Preprocesor Funkce Rozdělení programu do modulů a oddělený překlad
29 Cvičení Kap4 term io Cv2, 3, 4, 8 (odečítání + konverze) Cv6 hmm... raději závorkujte a testujte Cv5,7 typová konverze a zaokrouhlování 3.4 vs 3.5 Cv10,11 magie kodování viz kit://ostatni/zobrazeni_cisel... Cv12
30 Cvičení Kap5 if for while Cv2, Cv3 Cv4 převod hodnot Cv7, Cv11, Cv14, Cv15
31 Cvičení Kap6 file io Cv1, 2, 3, 4, 6, 7 Cv9a vs 9b reakce na chyby Cv11 Zkuste /bin/wc EOF vs feof()? Bílé znaky()? Zkuste rot(x) Caesarovskou šifru, co takhle 13? ;)
32 Cvičení Kap8 cpp Cvičení Cv2, 4, 6, 10
33 Cvičení Kap09 fce a paměť Cv1, 2, 4, 5, 6, 7, 14 Cv15 a 16 vyzkoušení lokality Cv18
34 10. Pointery Ukazatel, směrník Proměnná obsahující adresu skutečného obsahu *.. dereferenční operátor (získává obsah) &.. referenční operátor (získává adresu) %p.. formátovací znak (tiskne adresu)
35 Pointer jako parametr fce void vymen(int x, int y) { Funkce nemůže změnit skutečné parametry které leží vně fce... x a y jsou lokální proměnné fce vymen().. volání hodnotou void vymen(int *x, int *y) { int pom = *x; *x = *y; *y=pom; } Funkce může změnit obsah na který ukazují pointery x a y scanf... Tedy volání odkazem (str 152) sizeof(double *)!= sizeof(double)
36 Pointerová aritmetika 1 Operátor sizeof double d, *p_d; d = sizeof(d); //velikost pro ulozeni dbl (8) d = sizeof(p_d); //velikost pro ulozeni pointeru na dbl (4) d = sizeof(*p_d); //velikost pro ulozeni dbl (8) součet p+n, rozdíl p-n Odkaz na Ntý prvek daného typu p+n == p + ( sizeof(*p) * n ) Porovnání < <= >...!= Má smysl pouze pokud oba pointery ukazují do stejných dat
37 Pointerová aritmetika 2 Rozdíl pointerů p2-p1 Počet položek n = p2-p1 -> ((char *) p2 (char *) p1) / sizeof(p2); Sčítání Nelze, vyšel by nesmysl
38 Dynamická paměť Obecně tedy pointer ukazuje na paměť. Znalost pointerové aritmetiky s ním skákat, ale >> dynamické pole (ale to trochu předbíháme) malloc(unsigned int) Alokuje počet bytů (někdy více podle zarovnání) calloc(unsigned int) realloc(...) free (void *) Všechnu alokovanou paměť je potřeba uvolnit a žádnou neztrácet nevhodnou manipulací s pointery Po uvolnění je vhodné nulovat ukazatel free(p);p=null;
39 Blokové zpracování dat Přečte 10 čísel do dynamicky alokované paměti a vypočítá součin
40 Dynamické pole a pointer jako skutečný parametr Přečte 10 čísel do dynamicky alokované paměti a vypočítá součin Analogicky, pointer na int, pointer na char, tak proč ne pointer na pointer. = je stále jenom přiřazení a po dereferenci (aby fce mohla ovlivnit venek) musí sedět typy operandů Obr str 171 a příklad na str. 155
41 Pointer na funkce Pointer nemusí ukazovat jenom na data Pri prekladu (c->o) predstavuje identifikator printf take pouze adresu kde zacina fuknce v uplne jinem.o (knihovne) double (*p_fd)(); Pointer na funkci vracející double double soucet(double, double); p_fd = soucet; w = (*p_fd)(a,b); int (* (*f)()) []; Str 158 (188) Jak číst komplikované definice f je pointer na funkci vracející pointer na pole prvků typu int Funkce pak může být parametrem funkce (callback)
42 Cvičení Kap10 pointery Cv1,3 Zkuste šifrování a dešifrování XORem Použijte fread a fwrite (str. 292) kvůli problémům s \0, EOF, \r, \n...
43 11. Jednorozměrná pole Pole je datová struktura složená z prvků stejného typu int pole[pocet]; // pole[0].. pole[pocet-1] Vždy začínají od 0 {off-by-one} int pole[3]; pole[2] = 1; pole[3] = 11; //dle zarovnání (ne)způsobí chybu C nekontroluje meze polí > ručně
44 Legenda Pole a pointery Statické pole int x[10], *p_x; x adresa x[1] hodnota &x[1] adresa (p_x + 1) adresa *(p_x + 1) hodnota p_x adresa Dynamické pole p_x = (int *) malloc(10 * sizeof(int)); Pole a pointerová aritmetika x[i] == *(p_x + i)
45 Práce s polem Nelze pracovat s celým polem najednou Je třeba použít cyklus po prvcích Pole zvětšující svojí velikost musíme řešit sami alokací nového pole a kopií obsahu malloc + kopie realloc (automatická kopie) Pole jako parametr Pole nenese informace o své délce. Pokud má figurovat jako parametr do fce, musíme navíc předávat i délku
46 Ukázka práce s polem
47 Cvičení Kap11 - arrays Pole pointerů na funkce a Jak číst komplikované definice Str 187 Cv1, 2, 3, 4, 5, 6
48 12. Řetězce V čistém C je řetězec jednorozměrné pole typu char Ukončeno znakem '\0' Zde jsou lvi, offbyone, two, buffer overflow a ostatní... char s_stat[10]; char s1[10] = ahoj ; char s2[] = nazdar ; char *s3 = ahoj ; //neinicializovany //inicializovaný //inicializovaný bez udané délky //pointer na statickou pamet // dynamický retezec char *s_dyn = (char *) malloc(10 * sizeof(char)); strcpy(s_dyn, caune );
49 Funkce pro práci s řetězci scanf, fscanf, sscanf! scanf pouze po první bílý znak printf, fprintf, sprinf printf(const char *fmt,...); Kompletní popis formátovacích řetězců (str ) #include <string.h> strlen, strcpy, strncpy (bezpečnější), strcat, strchr, strrchr (práce pozpátku), strcmp, strncmp, strstr, atoi, atol, atof (převod na číslo)
50 Základní práce s řetězcem
51 Formátované čtení z a do řetězce sscanf, sprinf dokáže převádět převod řetězce na číslo (a to i z různých soustav)
52 Řádkově orientovaný V/V fputs, fgets(char *, int max, FILE *fr) max je počet včetně ukončovací \0, která je doplněna, přečteno je tedy pouze max-1 znaků (viz str 206)
53 Cvičení Kap12 - strings Cv2 kopie pomoci poiterové aritmetiky Cv3 tak trochu chyták Cv5 vyrobte pro prevod fce(pole), ktere provedou prislusne konverze Cv7 pointerová aritmetika Cv11 velmi elegantní Cv13 Cv14 délka formátu jako argument
54 13. Vícerozměrné pole Žádná věda pro statické pole int troj[5][6][7]; typedef int DVA[2][3]; DVA x,y,z; Takto alokované pole je v paměti uloženo po řádcích x[0][3] > x[1][0] Vícerozměrné dynamické pole
55 Inicializace pole
56 Nástroj pro kntrolu práce s pamětí Zaměňuje volání malloc a free za obdobné funkce s počítáním valgrind
57 Pole řetězců v praxi V praxi spíše char *pole[] = { prvni, dru, tret };
58 Cvičení Kap13 - multiarrays Cv3,6,7,8,9,11 Naprogramuj život Data Svet jako dvou rozmerne pole Pozici clovicka Pohyb clovicka nahodny do moznych smeru Zivot Pohyb,Vypis sveta,pohyb, Vypis...
59 14. Struktury, uniony a výčtový typ Struktura je heterogenní datový typ typedef struct miry { // jmeno struktury (jednotlive) int vyska; float vaha; } MIRY, *P_MIRY; // jmeno datovych typuu MIRY pavel, honza; MIRY lide[50], *p_l = lide; pavel = honza; // se strukturou lze pracovat najednou lide[23].vaha = 20; // pri pristupu do struktury. p_l >vyska = 3; //... pres ukazatel na strukturu > Často se používají k tvorbě spojových seznamů (str 237)
60 Struktury a spojový seznam Do spojového seznamu vygeneruje IP adresy
61 V poli struktur najde člověka s nejvyšším platem Vnořené struktury
62 Struktury, paměť a přístup Samozřejmě můžeme struktury, pointery a jejich dynamiku/statiku komplikovat nadevšechny meze, jen je potřeba nezapomínat na to co je přístup přímo (.) a přes pointer (->)... Viz str 243 (teď) používání p_ nebo jiných konvencí podporuje čitelnost Struktury jsou v paměti uloženy v pořadí shora dolů, ale kvůli zarovnání je potřeba vždy používat sizeof a vyvarovat se přístupu typu s+offset
63 Struktura a funkce 1 Se strukturu se pracuje jako se základnímy datovými typu, lze je předávat hodnotou a lze je i vracet nevhodné pro ty velké...
64 Struktura a funkce 2 Vhodnější je předávání pomocí pointerů
65 Výčtový typ Datový typ který definuje symbolické konstanty které mají vzájemnou souvislost typedef enum { MODRA, CERVENA, ZELENA, ZLUTA } BARVY; BARVY barva = MODRA; char *nazvy = { Modra, Cervena, Zelena }; printf( Byla to barva %s\n, nazvy[barva]);
66 Uniony Překryvná struktura, šetří paměť, vždy nese v daném okamžiku pouze jednu položku. Velikost přidělené paměťi závisí na největším prvku Neobsahuje informaci o obsahu, je nutné jej znát. Často tedy ve struktuře nesoucí informaci o typu... typedef enum { ZNAK, CELE, REALNE } TYP; typedef union { char c; int i; float f; } ZN_INT_FLT; typedef struct { TYP typ; ZN_INT_FLT polozka; } LEPSI_UNION;
67 Cvičení Kap14 Cv1,2,3 Cv4 spojový seznam Cv5,6,7,9
68 15. Bitové pole a operace & ^ -- AND OR XOR << >> -- bitový posun ~ -- bitová negace x y & XOR Nelze manipulovat s reálnými typy (výsledek by neměl smysl... viz zobrazení reálných čísel v paměti) signed int dělají ze stejného důvodu problém se znaménkem Hodí se zejména ke čtení stavových slov (muhehe) int isbitset(int x, unsigned char position) { x >>= position; return (x & 1)!= 0; } Cvičení...
69 16. Tabulka preferencí Hezká věc, ale radeji závorkujme...
70 17. Komplexní pohled na V/V Binární vs textové soubory non-ascii, \0, EOF,... Z hlediska člověka je to rozdíl, z hlediska ANSI C není Režim otevření to je to co C (implementaci libc) zajímá Binární nikde žádná konverze Textový manipulace s \r (konec řádky) Problém nastane při nevhodné kombinaci (textově otevřeme s binárním souborem) EOF(0xFF) Ctrl-Z (0x1A) Ctrl-D (0x04) \r (0x0D)
71 Funkce pro blokové čtení a zápis fread(dest*,size,n,file*) fopen, fwrite, fseek, ftell, fclose str (čtení struktur asi není moc přenositelné)! str 305 operace cteni a zapis po sobe? fflush, setbuf, setvbuf Všechny V/V operace jsou bufferované OS a je to tak dobře Řádkové Blokové Žádné feof, ferror freopen, rename, tmpfile, tempnam,...
72 Ukázka práce se souborem Blokově zkopíruje soubor
73 Obrázek
74 Fce nejsou součástí ANSI C, proto je kód nepřenosný str 312 Obsah adresáře
75 Ostatní funkce Seznam základních hlavičkových souborů Str 320 rand() str 340 Vyhledávání a řazení str 344 strtok() snad později (str 349) memcpy() bloková kopie oblasti paměti (str 351) time, localtime, strftime, mktime práce s datumy (str 359)
76 19. Ladění programů logovat program printf()/fprintf() Zapínat nebo vypínat výpisy preprocesorem Na základě argumentů/konfigurace programu Debugerem runtime vs. post mortem gdb... hardcore ulimit -c unlimited; gdb program core $ back, list, break, run, edit, set print pretty on ddd... krasne zobrazení Netbeans.. trošku tricky, ale větší komfort Nezapomenout přepínač g
77 20. Unix a GCC GCC GNU Compiler 2.95 dlouholetý standard, 4.x současnost # prelozi a sestavi program do a.out gcc pokus.c # dtto do pokus s kontrolou dle standardu gcc ansi pokus.c o pokus # prelozi objekt s ladicimi symboly, navic definuje symbolickou konstantu gcc g DDEBUG pokus.c c # sestavi program z modulu gcc pokus.o pokus1.o o pokus Wall ansi pedantic g O3 L<libdir> l<libname> I<includesdir>
78 make Nástroj pro řízení a automatizaci překladu Oddělený překlad modulů automake, autoconf... makrošílenství Make se řídí konfiguračním skriptem a časovými razítky souborů
79 kit:// Potreby pro cviceni install Vypracovaná cvičení a ukázky z knihy Další ukázky ssh.. shell Spojovy seznam Get.. packet sniffer Openficker4.. PoC Regexps in C Priklady z prezentace Ruzne ostatni priklady Sockety Xor file cypher
80 Co se nevešlo Desatero (str 425) $ apt-get install manpages-dev gcc-doc glibc-doc diff vs patch man, apropos Tvorba funkcí s proměnným počtem parametrů Str 337 lint, splint statická kontrola zdrojových textů Regularni vyrazy v C (kit://priklady/pam...) glibc gtk
81 Getopt Zpracování argumentů programu z příkazové řádky standardizovaným způsobem
82 kit://priklady/get Get packet sniffer
83 Sockety TODO kit://ostatni/sockety Klient struct addr, int fd socket connect read,write recv,send close Server struct addr, int fs, int fc socket bind listen accept, select read,write recv,send close
84 Vlákna
85 DAY 3 Podle potřeby goto DAY4
86 DAY 4 - openficker viz Nebezpecnost 2009 makefile je špatně
87 Výtah z Učebnice jazyka C bodik@{civ.zcu.cz,4safety.cz}
Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií
1 Fakulta elektrotechniky a informatiky Katedra softwarových technologií 12. října 2009 Organizace výuky Přednášky Teoretické základy dle normy jazyka C Cvičení Praktické úlohy odpřednášené látky Prostřední
Správné vytvoření a otevření textového souboru pro čtení a zápis představuje
f1(&pole[4]); funkci f1 předáváme hodnotu 4. prvku adresu 4. prvku adresu 5. prvku hodnotu 5. prvku symbolická konstanta pro konec souboru je eof EOF FEOF feof Správné vytvoření a otevření textového souboru
Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15
Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 KAPITOLA 1 Úvod do programo vání v jazyce C++ 17 Základní pojmy 17 Proměnné a konstanty 18 Typy příkazů 18 IDE integrované vývojové
IUJCE 07/08 Přednáška č. 4. v paměti neexistuje. v paměti existuje
Konstanty I možnosti: přednostně v paměti neexistuje žádný ; o preprocesor (deklarace) #define KONSTANTA 10 o konstantní proměnná (definice) const int KONSTANTA = 10; příklad #include v paměti
Opakování programování
Opakování programování HW návaznost - procesor sběrnice, instrukční sada, optimalizace rychlosti, datové typy, operace (matematické, logické, podmínky, skoky, podprogram ) - paměti a periferie - adresování
Programování v C++ 1, 1. cvičení
Programování v C++ 1, 1. cvičení opakování látky ze základů programování 1 1 Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze Zimní semestr 2018/2019 Přehled 1 2 Shrnutí procvičených
10 Práce s řetězci - pokračování
10 Práce s řetězci - pokračování Máme deklarováno: char retez[50]; - čtení z klávesnice: scanf("%s", retez); - čtení zadané počtu znaků z klávesnice scanf("%10s", retez); // přečti řetězec z klávesnice,max
IUJCE 07/08 Přednáška č. 1
Úvod do předmětu Literatura Záznamy přednášek a vaše poznámky Harbison, S. P., Steele, G. L.: Referenční příručka jazyka C Herout, P.: Učebnice jazyka C Kernighan, B. W., Ritchie, D. M.: The C Programming
9.3.2010 Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include <stdio.h>
9.3.2010 Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include int main(void) { int dcislo, kolikbcislic = 0, mezivysledek = 0, i; int vysledek[1000]; printf("zadejte
for (i = 0, j = 5; i < 10; i++) { // tělo cyklu }
5. Operátor čárka, - slouží k jistému určení pořadí vykonání dvou příkazů - oddělím-li čárkou dva příkazy, je jisté, že ten první bude vykonán dříve než příkaz druhý. Např.: i = 5; j = 8; - po překladu
2 Základní funkce a operátory V této kapitole se seznámíme s použitím funkce printf, probereme základní operátory a uvedeme nejdůležitější funkce.
Vážení zákazníci, dovolujeme si Vás upozornit, že na tuto ukázku knihy se vztahují autorská práva, tzv copyright To znamená, že ukázka má sloužit výhradnì pro osobní potøebu potenciálního kupujícího (aby
Operační systémy. Cvičení 3: Programování v C pod Unixem
Operační systémy Cvičení 3: Programování v C pod Unixem 1 Obsah cvičení Editace zdrojového kódu Překlad zdrojového kódu Základní datové typy, struktura, ukazatel, pole Načtení vstupních dat Poznámka: uvedené
Základy programování (IZP)
Základy programování (IZP) Páté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Petr Veigend, iveigend@fit.vutbr.cz 5. týden
- jak udělat konstantu long int: L long velka = 78L;
Konstanty (konstatní hodnoty) Např.: - desítkové: 25, 45, 567, 45.678 - osmičkové: 045, 023, 03 vždy začínají 0 - šestnáctkové: 0x12, 0xF2, 0Xcd, 0xff, 0xFF - jak udělat konstantu long int: 245566553L
Operační systémy. Cvičení 4: Programování v C pod Unixem
Operační systémy Cvičení 4: Programování v C pod Unixem 1 Obsah cvičení Řídící struktury Funkce Dynamická alokace paměti Ladění programu Kde najít další informace Poznámka: uvedené příklady jsou dostupné
Základy programování (IZP)
Základy programování (IZP) Deváté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Petr Veigend, iveigend@fit.vutbr.cz 27.11.2017,
Programovací jazyk C++ Hodina 1
Programovací jazyk C++ Hodina 1 Používané překladače Bloodshed Dev C++ http://www.bloodshed.net/devcpp.html CodeBlocks http://www.codeblocks.org pokud nemáte již nainstalovaný překladač, stáhněte si instalátor
Struktura programu v době běhu
Struktura programu v době běhu Miroslav Beneš Dušan Kolář Struktura programu v době běhu Vztah mezi zdrojovým programem a činností přeloženého programu reprezentace dat správa paměti aktivace podprogramů
Ukazatel (Pointer) jako datový typ - proměnné jsou umístěny v paměti na určitém místě (adrese) a zabírají určitý prostor (počet bytů), který je daný
Ukazatel (Pointer) jako datový typ - proměnné jsou umístěny v paměti na určitém místě (adrese) a zabírají určitý prostor (počet bytů), který je daný typem proměnné - ukazatel je tedy adresa společně s
Pole a Funkce. Úvod do programování 1 Tomáš Kühr
Pole a Funkce Úvod do programování 1 Tomáš Kühr (Jednorozměrné) pole u Datová struktura u Lineární u Homogenní = prvky stejného datového typu u Statická = předem určený počet prvků u Pole umožňuje pohodlně
Strukturu lze funkci předat: (pole[i])+j. switch(výraz) velikost ukazatele
Strukturu lze funkci předat: hodnotou i pomocí ukazatele pouze pomocí ukazatele (reference na strukturu) pouze hodnotou (kopie struktury) (pole[i])+j adresa prvku na souřadnicích i, j adresa i-tého řádku
ZPRO v "C" Ing. Vít Hanousek. verze 0.3
verze 0.3 Hello World Nejjednoduší program ukazující vypsání textu. #include using namespace std; int main(void) { cout
Základy programování (IZP)
Základy programování (IZP) Šesté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Petr Veigend, iveigend@fit.vutbr.cz 6. týden
Formátové specifikace formátovací řetězce
27.2.2007 Formátové specifikace formátovací řetězce - je to posloupnost podle které překladač pozná jaký formát má výstup mít - posloupnosti začínají znakem % a určující formát vstupu/výstupu - pokud chcete
Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b
Výrazy a operátory i = 2 i = 2; to je výraz to je příkaz 4. Operátory Unární - unární a unární + Např.: +5-5 -8.345 -a +b - unární ++ - inkrement - zvýší hodnotu proměnné o 1 - unární -- - dekrement -
int ii char [16] double dd název adresa / proměnná N = nevyužito xxx xxx xxx N xxx xxx N xxx N
Struktura (union) - struktura a union jsou složené typy, které "v sobě" mohou obsahovat více proměnných - struktura obsahuje v každém okamžiku všechny své proměnné, union obsahuje (=je "aktivní") pouze
Algoritmizace a programování
Algoritmizace a programování Strukturované proměnné Struktura, union Jazyk C České vysoké učení technické Fakulta elektrotechnická A8B14ADP Jazyk C - Strukturované proměnné Ver.1.10 J. Zděnek 20151 Struktura
Základy programování (IZP)
Základy programování (IZP) Jedenácté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Gabriela Nečasová, inecasova@fit.vutbr.cz
8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek
8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek 1/41 Základní příkazy Všechny příkazy se píšou malými písmeny! Za většinou příkazů musí být středník (;)! 2/41 Základní příkazy
Úvod do programovacích jazyků (Java)
Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2007/2008 c 2006 2008 Michal Krátký Úvod do programovacích
Základní datové typy, proměnné - deklarujeme předem - C je case sensitive rozlišuje malá a velká písmena v názvech proměnných a funkcí
02 Jazyk C - je imperativní říkáme, co se má udělat, voláme příkazy - další imperativní jazyky: Pascal, Java, C/C++ apod. - na rozdíl od jazyků deklarativních např. Prolog, Haskell, Scheme, Lisp (funkcionální
Např.: // v hlavičkovém souboru nebo na začátku // programu (pod include): typedef struct { char jmeno[20]; char prijmeni[20]; int rok_nar; } CLOVEK;
Struktury - složený datový typ. - datový typ jehož položky jsou jiné proměnné: - používá obvykle dohromady s příkazem typedef nechci vypisovat opakovaně složitou deklaraci pomocí typedef udělám nový datový
Př. další použití pointerů
Př. další použití pointerů char *p_ch; int *p_i; p_ch = (char *) p_i; // konverze int * na char * 8 int i = 5; int *p_i; p_i = &i; POZOR!!!! scanf("%d", p_i); printf("%d", *p_i); Obecný pointer na cokoliv:
Předmluva k aktuálnímu vydání Úvod k prvnímu vydání z roku Typografické a syntaktické konvence... 20
Obsah 5 Obsah Předmluva k aktuálnímu vydání 15 1 Úvod k prvnímu vydání z roku 2000 16 Typografické a syntaktické konvence................ 20 2 Základní pojmy 21 2.1 Trocha historie nikoho nezabije................
Zápis programu v jazyce C#
Zápis programu v jazyce C# Základní syntaktická pravidla C# = case sensitive jazyk rozlišuje velikost písmen Tzv. bílé znaky (Enter, mezera, tab ) ve ZK překladač ignoruje každý příkaz končí ; oddělovač
Lekce 6 IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ JAZYK C
Identifikační údaje školy Číslo projektu Název projektu Číslo a název šablony Autor Tematická oblast Číslo a název materiálu Anotace Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace
Lekce 9 IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ JAZYK C
Identifikační údaje školy Číslo projektu Název projektu Číslo a název šablony Autor Tematická oblast Číslo a název materiálu Anotace Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace
Bitové operátory a bitová pole. Úvod do programování 2 Tomáš Kühr
Bitové operátory a bitová pole Úvod do programování 2 Tomáš Kühr Bitové operátory Provádějí danou operaci s jednotlivými bity svých operandů Operandy bitových operátorů mohou být pouze celočíselné Vyhodnocení
IUJCE 07/08 Přednáška č. 6
Správa paměti Motivace a úvod v C (skoro vždy) ručně statické proměnné o datový typ, počet znám v době překladu o zabírají paměť po celou dobu běhu programu problém velikosti definovaných proměnných jak
Jazyk C++, některá rozšíření oproti C
Karel Müller, Josef Vogel (ČVUT FIT) Jazyk C++, některá rozšíření oproti C BI-PA2, 2011, Přednáška 1 1/22 Jazyk C++, některá rozšíření oproti C Ing. Josef Vogel, CSc Katedra softwarového inženýrství Katedra
Začínáme vážně programovat. Řídící struktury Přetypování Vstupně výstupní operace Vlastní tvorba programů
Začínáme vážně programovat Řídící struktury Přetypování Vstupně výstupní operace Vlastní tvorba programů Podmínky a cykly Dokončení stručného přehledu řídících struktur jazyka C. Složený příkaz, blok Pascalské
Výrazy, operace, příkazy
Výrazy, operace, příkazy Karel Richta a kol. katedra počítačů FEL ČVUT v Praze Přednášky byly připraveny s pomocí materiálů, které vyrobili Ladislav Vágner, Pavel Strnad Karel Richta, Martin Hořeňovský,
Základy jazyka C. Základy programování 1 Martin Kauer (Tomáš Kühr)
Základy jazyka C Základy programování 1 Martin Kauer (Tomáš Kühr) Organizační záležitosti Konzultace Pracovna 5.076 Úterý 15:00 16:30 Emailem martin.kauer@upol.cz Web předmětu http://tux.inf.upol.cz/~kauer/index.php?content=var&class=zp1
Základy programování (IZP)
Základy programování (IZP) Čtvrté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Petr Veigend, iveigend@fit.vutbr.cz 4.
Ukazatele, dynamická alokace
Ukazatele, dynamická alokace Karel Richta a kol. katedra počítačů FEL ČVUT v Praze Přednášky byly připraveny s pomocí materiálů, které vyrobili Ladislav Vágner, Pavel Strnad, Martin Mazanec Karel Richta,
Základy programování (IZP)
Základy programování (IZP) Třetí počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Petr Veigend, iveigend@fit.vutbr.cz Verze
Vstup a výstup datové proudy v C
Vstup a výstup datové proudy v C Petr Šaloun katedra informatiky FEI VŠB-TU Ostrava 24. října 2011 Petr Šaloun (katedra informatiky FEI VŠB-TU Ostrava) Vstup a výstup 24. října 2011 1 / 37 Přehled, rozdělení
Stručný obsah První týden Druhý týden 211 Třetí týden 451 Rejstřík 787
Stručný obsah První týden 25 den 1 Začínáme 27 den 2 Anatomie programu C++ 43 den 3 Proměnné a konstanty 57 den 4 Výrazy a příkazy 79 den 5 Funkce 107 den 6 Objektově orientované programování 141 den 7
VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu
VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632
Příkazy preprocesoru - Před překladem kódu překladačem mu předpřipraví kód preprocesor - Preprocesor vypouští nadbytečné (prázdné) mezery a řádky -
Příkazy preprocesoru - Před překladem kódu překladačem mu předpřipraví kód preprocesor - Preprocesor vypouští nadbytečné (prázdné) mezery a řádky - Preprocesor je možné ovládat pomocí příkazů - řádky začínající
Algoritmizace a programování. Ak. rok 2012/2013 vbp 1. ze 44
Algoritmizace a programování Ak. rok 2012/2013 vbp 1. ze 44 Vladimír Beneš Petrovický K101 katedra matematiky, statistiky a informačních technologií vedoucí katedry E-mail: vbenes@bivs.cz Telefon: 251
Programovací jazyk C(++) C++ area->vm_mm->locked_vm -= len >> PAGE_SHIFT;
Programovací jazyk C(++) static struct vm_area_struct * unmap_fixup(struct mm_struct *mm, struct vm_area_struct *area, unsigned long addr, size_t len, struct vm_area_struct 1. *extra) Základy { struct
Jazyk C práce se soubory. Jan Hnilica Počítačové modelování 16
Jazyk C práce se soubory 1 Soubory Použití souborů pro vstup většího množství dat do programu (uživatel nezadává z klávesnice ručně tisíce údajů...) pro uložení většího množství výsledků, např. k pozdějšímu
5 Přehled operátorů, příkazy, přetypování
5 Přehled operátorů, příkazy, přetypování Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně budou uvedeny detaily týkající se operátorů. Doba nutná k nastudování
Práce s binárními soubory. Základy programování 2 Tomáš Kühr
Práce s binárními soubory Základy programování 2 Tomáš Kühr Binární soubory Mohou mít libovolnou strukturu Data jsou uložena ve stejné podobě jako v paměti za běhu programu Výhody: Pro uložení je potřeba
Odvozené a strukturované typy dat
Odvozené a strukturované typy dat Petr Šaloun katedra informatiky FEI VŠB-TU Ostrava 14. listopadu 2011 Petr Šaloun (katedra informatiky FEI VŠB-TU Ostrava) Odvozené a strukturované typy dat 14. listopadu
vstup a výstupv jazyce C
vstup a výstupv jazyce C - funkce vstupu a výstupu nejsou součástí jazyka, jsou především v knihovně stdio.h (její obsah je dán normou) - pro práci se soubory (lépe streamy "sériový vstup/výstup", tj.
Knihovní funkce jazyka C
Knihovní funkce jazyka C Petr Šaloun 10. listopadu 2003 PJCPP Knihovní funkce jazyka C 6-1 Popis funkcí a maker standardních knihoven Makro používané při ladění. Práce se znaky. isalnum()
Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) 28. prosince Fakulta elektrotechniky a informatiky Katedra softwarových technologií
9 Fakulta elektrotechniky a informatiky Katedra softwarových technologií 28. prosince 2009 Struktury Struktury heterogenní struktura položky mohou být různých datových typů vystupuje jako jediný objekt
Maturitní otázky z předmětu PROGRAMOVÁNÍ
Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti
Práce se soubory. Úvod do programování 2 Tomáš Kühr
Práce se soubory Úvod do programování 2 Tomáš Kühr Soubory z pohledu C u Soubor chápeme jako posloupnost bytů uložených na disku u Datový proud (anglicky stream) u Ještě obecnější přístup u Sjednocuje
Preprocesor a koncepce (větších) programů. Úvod do programování 2 Tomáš Kühr
Preprocesor a koncepce (větších) programů Úvod do programování 2 Tomáš Kühr Práce s preprocesorem Preprocesor Zpracovává zdrojový kód ještě před překladačem Provádí pouze záměny textů (např. identifikátor
Jazyk C# a platforma.net
Jazyk C# a platforma.net Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Syntaxe jazyka C# - 1. část BI-DNP Evropský sociální fond
Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007
Úvod do programovacích jazyků (Java) Michal Krátký 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků
9. lekce Úvod do jazyka C 4. část Funkce, rekurze Editace, kompilace, spuštění Miroslav Jílek
9. lekce Úvod do jazyka C 4. část Funkce, rekurze Editace, kompilace, spuštění Miroslav Jílek 1/24 Editační prostření Kód programu lze editovat v jakémkoli textovém editoru. 2/24 Editační prostření Kód
Úvod do programování. Lekce 1
Úvod do programování Lekce 1 Základní pojmy vytvoření spustitelného kódu editor - psaní zdrojových souborů preprocesor - zpracování zdrojových souborů (vypuštění komentářů atd.) kompilátor (compiler) -
IUJCE Přednáška č. 11. další prvky globální proměnné, řízení viditelnosti proměnných, funkcí
Velké projekty v C velký = 100ky a více řádek udržovatelnost, bezpečnost, přehlednost kódu rozdělení programu do více souborů další prvky globální proměnné, řízení viditelnosti proměnných, funkcí Globální
Práce se soubory. Úvod do programování 2 Tomáš Kühr
Práce se soubory Úvod do programování 2 Tomáš Kühr Soubory z pohledu C Soubor zjednodušeně chápeme jako posloupnost bytů uložených někde na disku Datový proud (anglicky stream) Ještě obecnější přístup
Pointery II. Jan Hnilica Počítačové modelování 17
Pointery II 1 Pointery a pole Dosavadní způsob práce s poli zahrnoval: definici pole jakožto kolekce proměnných (prvků) jednoho typu, umístěných v paměti za sebou int pole[10]; práci s jednotlivými prvky
Výrazy, operace, příkazy
Výrazy, operace, příkazy Karel Richta a kol. katedra počítačů FEL ČVUT v Praze Přednášky byly připraveny i s pomocí materiálů, které vyrobili Ladislav Vágner, Pavel Strnad Karel Richta, Martin Hořeňovský,
Data, výrazy, příkazy
Data, výrazy, příkazy Karel Richta a kol. katedra počítačů FEL ČVUT v Praze Přednášky byly připraveny s pomocí materiálů, které vyrobili Ladislav Vágner, Pavel Strnad, Martin Hořeňovský, Aleš Hrabalík
1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:
1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.
vstup a výstupy jazyce C
vstup a výstupy jazyce C - funkce vstupu a výstupu nejsou součástí jazyka, jsou především v knihovně stdio.h (její obsah je dán normou definující standardní knihovny) - pro práci se soubory (lépe streamy
1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:
1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.
Ukazka knihy z internetoveho knihkupectvi www.kosmas.cz
Ukazka knihy z internetoveho knihkupectvi www.kosmas.cz Upozornění pro čtenáře a uživatele této knihy Všechna práva vyhrazena. Žádná část této tištěné či elektronické knihy nesmí být reprodukována a šířena
6. lekce Úvod do jazyka C knihovny datové typy, definice proměnných základní struktura programu a jeho editace Miroslav Jílek
6. lekce Úvod do jazyka C knihovny datové typy, definice proměnných základní struktura programu a jeho editace Miroslav Jílek 1/73 https://en.cppreference.com internetová stránka s referencemi https://gedit.en.softonic.com/download
- dělají se také pomocí #define - podobné (použitím) funkcím - předpřipravená jsou např. v ctype.h. - jak na vlastní makro:
21.4.2009 Makra - dělají se také pomocí #define - podobné (použitím) funkcím - předpřipravená jsou např. v ctype.h - jak na vlastní makro: #define je_velke(c) ((c) >= 'A' && (c)
Jak v Javě primitivní datové typy a jejich reprezentace. BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické
Jak v Javě primitivní datové typy a jejich reprezentace BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické Obsah Celočíselný datový typ Reálný datový typ Logický datový typ, typ Boolean
Práce se soubory. Základy programování 2 Tomáš Kühr
Práce se soubory Základy programování 2 Tomáš Kühr Soubory z pohledu C Soubor zjednodušeně chápeme jako posloupnost bytů uložených někde na disku Datový proud (anglicky stream) Ještě obecnější přístup
1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5
Obsah Obsah 1 Programovací jazyk Pascal 1 1.1 Struktura programu v Pascalu.................... 1 2 Proměnné 2 2.1 Vstup a výstup............................ 3 3 Operátory a některé matematické funkce 5
Algoritmizace a programování
Algoritmizace a programování Výrazy Operátory Výrazy Verze pro akademický rok 2012/2013 1 Operace, operátory Unární jeden operand, operátor se zapisuje ve většině případů před operand, v některých případech
Programování v jazyce C pro chemiky (C2160) 4. Textové řetězce, zápis dat do souboru
Programování v jazyce C pro chemiky (C2160) 4. Textové řetězce, zápis dat do souboru Textové řetězce V jazyce C neexistuje typ proměnné, který by byl určen výhradně pro ukládání textu V jazyce C používáme
Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false
Logické operace Datový typ bool může nabýt hodnot: o true o false Relační operátory pravda, 1, nepravda, 0, hodnoty všech primitivních datových typů (int, double ) jsou uspořádané lze je porovnávat binární
int => unsigned int => long => unsigned long => float => double => long double - tj. bude-li:
13.4.2010 Typová konverze - změna jednoho datového typu na jiný - známe dva základní implicitní ("sama od sebe") a explicitní (výslovně vyžádána programátorem) - C je málo přísné na typové kontroly = dokáže
EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI
EVROPSKÝ SOCIÁLNÍ FOND Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI Úvod do PHP PHP Personal Home Page Hypertext Preprocessor jazyk na tvorbu dokumentů přípona: *.php skript je součást HTML stránky!
Jazyk C Program v jazyku C má následující strukturu: konstanty nebo proměnné musí Jednoduché datové typy: Strukturované datové typy Výrazy operátory
Jazyk C Program v jazyku C má následující strukturu: Direktivy procesoru Globální definice (platné a známé v celém programu) Funkce Hlavička funkce Tělo funkce je uzavřeno mezi složené závorky { Lokální
Strukturované typy a ukazatele. Úvod do programování 1 Tomáš Kühr
Strukturované typy a ukazatele Úvod do programování 1 Tomáš Kühr Motivace Se základními datovými typy si sice vystačíme Někdy to ale může být nepříjemně nepřehledné Příklady: long double soucet(const long
Koncepce (větších) programů. Základy programování 2 Tomáš Kühr
Koncepce (větších) programů Základy programování 2 Tomáš Kühr Parametry a návratová hodnota main Již víme, že main je funkce A také tušíme, že je trochu jiná než ostatní funkce v programu Funkce main je
VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu
VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632
Paměť počítače. alg2 1
Paměť počítače Výpočetní proces je posloupnost akcí nad daty uloženými v paměti počítače Data jsou v paměti reprezentována posloupnostmi bitů (bit = 0 nebo 1) Připomeňme: paměť je tvořena řadou 8-mi bitových
C++ Akademie SH. 2. Prom nné, podmínky, cykly, funkce, rekurze, operátory. Michal Kvasni ka. 20. b ezna Za áte níci C++
C++ Akademie SH 2. Prom nné, podmínky, cykly, funkce, rekurze, operátory Za áte níci C++ 20. b ezna 2011 Obsah 1 Prom nné - primitivní typy Celá ísla ƒísla s pohyblivou desetinnou árkou, typ bool 2 Podmínka
Stromy, soubory. BI-PA1 Programování a Algoritmizace 1. Ladislav Vagner, Josef Vogel
Stromy, soubory BI-PA1 Programování a Algoritmizace 1 Ladislav Vagner, Josef Vogel Katedra teoretické informatiky a Katedra softwarového inženýrství Fakulta informačních technologíı České vysoké učení
Operátory, výrazy. Tomáš Pitner, upravil Marek Šabo
Operátory, výrazy Tomáš Pitner, upravil Marek Šabo Operátor "Znaménko operace", pokyn pro vykonání operace při vyhodnocení výrazu. V Javě mají operátory napevno daný význam, nelze je přetěžovat jako v
Algoritmizace a programování
Algoritmizace a programování Typy Základní (primitivní) datové typy Deklarace Verze pro akademický rok 2012/2013 1 Typy v jazyce Java Základní datové typy (primitivní datové typy) Celočíselné byte, short,
Základní pojmy. Úvod do programování. Základní pojmy. Zápis algoritmu. Výraz. Základní pojmy
Úvod do programování Michal Krátký 1,Jiří Dvorský 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programování, 2004/2005 Procesor Procesorem je objekt, který vykonává algoritmem popisovanou
IUJCE Přednáška č. 1. programování v C na vyšší úrovni základy objektově orientovaného programovaní v (C++, C#)
Úvod do předmětu Cíle předmětu: programování v C na vyšší úrovni základy objektově orientovaného programovaní v (C++, C#) Náplň předmětu 1. Bitové operace, rekuze, paměťové třídy a typové modifikátory
Programování v jazyce C a C++
Programování v jazyce C a C++ Richter 1 Petyovský 2 1. března 2015 1 Ing. Richter Miloslav, Ph.D., UAMT FEKT VUT Brno 2 Ing. Petyovský Petr, UAMT FEKT VUT Brno C++ Stručná charakteristika Nesdíĺı normu
Lekce 19 IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ JAZYK C
Identifikační údaje školy Číslo projektu Název projektu Číslo a název šablony Autor Tematická oblast Číslo a název materiálu Anotace Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace
Preprocesor. Karel Richta a kol. katedra počítačů FEL ČVUT v Praze. Karel Richta, Martin Hořeňovský, Aleš Hrabalík, 2016
Preprocesor Karel Richta a kol. katedra počítačů FEL ČVUT v Praze Karel Richta, Martin Hořeňovský, Aleš Hrabalík, 2016 Programování v C++, A7B36PJC 4/2016, Lekce 9b https://cw.fel.cvut.cz/wiki/courses/a7b36pjc/start
Formátová specifikace má tvar (některé sekce nemají smysl pro načítání) %
vstup a výstup na konzolu - vstupním zařízením je klávesnice, výstupním monitor (přístup jako k sériovým zařízením) - spojení s konzolami je nastaveno automaticky na začátku programu - ke konzole je možné