načítání...


menu
nákupní košík
Košík

je prázdný
a
b

Kniha: Programovací jazyk C++ 3. díl – Miroslav Virius

Programovací jazyk C++ 3. díl
-15%
sleva

Kniha: Programovací jazyk C++ 3. díl
Autor: Miroslav Virius

Třetí díl výukového textu k přednášce Programování v C++ se zabývá standardními knihovnami jazyků C a C++ a pokrývá především následující témata: Vstupní a výstupní operace v C a C++, přístup k souborovému systému, práce s národním ... (celý popis)
Titul doručujeme za 5 pracovních dní
Vaše cena s DPH:  399 Kč 339
+
-
rozbalKdy zboží dostanu
11,3
bo za nákup
rozbalVýhodné poštovné: 49Kč
rozbalOsobní odběr zdarma

hodnoceni - 0%hodnoceni - 0%hodnoceni - 0%hodnoceni - 0%hodnoceni - 0%   celkové hodnocení
0 hodnocení + 0 recenzí

Specifikace
Nakladatelství: » ČVUT Praha
Médium / forma: Tištěná kniha
Rok vydání: 2018
Počet stran: 344
Rozměr: 210x297
Úprava: 3 svazky (299; 303; 342 stran): ilustrace
Vydání: 1. vydání
Skupina třídění: Programování. Software
Učební osnovy. Vyučovací předměty. Učebnice
Jazyk: česky
Datum vydání: 25.07.2018
ISBN: 978-80-01-06089-6
EAN: 9788001060896
Ukázka: » zobrazit ukázku
Popis

Třetí díl výukového textu k přednášce Programování v C++ se zabývá standardními knihovnami jazyků C a C++ a pokrývá především následující témata: Vstupní a výstupní operace v C a C++, přístup k souborovému systému, práce s národním prostředím, práce se znakovými řetězci a regulární výrazy, vícevláknové programování, nástroje pro matematické výpočty, kontejnery a algoritmy pro jejich zpracování, práce s časem, zpracování chybových stavů a nástroje pro práci s datovými typy v době překladu. Učební text vychází ze standardu ISO/IEC 14888:2011, uvádí ale i většinu novinek z připravované revize standardu očekávané v roce 2017. Výklad doprovázejí příklady zdrojového kódu.

Předmětná hesla
Kniha je zařazena v kategoriích
Miroslav Virius - další tituly autora:
Od C++ k C sharp Od C++ k C sharp
Programovací jazyk C++  1. díl Programovací jazyk C++ 1. díl
Pokročilé programovací techniky Pokročilé programovací techniky
Programovací jazyk C++ 2. díl Programovací jazyk C++ 2. díl
Základy programování v C++ Základy programování v C++
Programování pro .NET Programování pro .NET
 
Ke knize "Programovací jazyk C++ 3. díl" doporučujeme také:
Programovací jazyk C++ 2. díl Programovací jazyk C++ 2. díl
Programovací jazyk C++  1. díl Programovací jazyk C++ 1. díl
 
Recenze a komentáře k titulu
Zatím žádné recenze.


Ukázka / obsah
Přepis ukázky

Obsah

Předm luva 3

Obsah 6

1 Knihovny jazyků С a C + + 11

1.1 Hlavičkové soubory.................................................................................................. 11

1.2 Základní součásti knihoven...................................................................................... H

1.2.1 Programovací jazyk C ................................................................................. H

1.2.2 Programovací jazyk C++ ........................................................................... 12

1.3 Pozorovatelné chování ............................................................................................. 13

2 Vstupy a výstupy, souborový systém 14

2.1 Soubory a datové proudy.......................................................................................... 14

2.1.1 Binární a textové soubory........................................................................... 14

2.1.2 Standardní datové p ro u d y ........................................................................... 15

2.1.3 Zpracování datového proudu........................................................................ 16

2.2 Objektové datové proudy v C + + ........................................................................... 16

2.2.1 Hierarchie tříd a šablon................................................................................ 16

2.2.2 Formátované vstupy a výstupy..................................................................... 26

2.2.3 Výjim ky........................................................................................................ 33

2.2.4 Neformátované vstupy a v ý stu p y ............................................................... 34

2.2.5 Rozšiřování možností vstupů a výstupů...................................................... 36

2.3 Standardní vstupy a výstupy jazyka C (std io .h ).................................................... 40

2.3.1 Otevření a uzavření p ro u d u ........................................................................ 40

2.3.2 Formátovaný zápis do souboru..................................................................... 42

2.3.3 Makra pro formátování celočíselných t y p ů ................................................. 50

2.3.4 Funkce pro znakový výstup ........................................................................ 51

2.3.5 Formátovaný vstup ze souboru..................................................................... 52

2.3.6 Makra pro čtení celočíselných typů (C99, C ++ 11)..................................... 57

2.3.7 Funkce pro znakový v s tu p ........................................................................... 57

2.3.8 Neformátované čtení a z á p is........................................................................ 59

2.3.9 Standardní vstup a výstup........................................................................... 61

2.3.10 Paměťové proudy.......................................................................................... 62

2.3.11 Vstup a výstup s výpustkou........................................................................ 64

2.3.12 Manipulace se soubory................................................................................. 65

2.3.13 Formátované operace se širokými znaky....................................................... 65

2.4 Práce se soubory pomocí identifikačních čísel.......................................................... 67

6


OBSAH

2.4.1 Otevření a zavření souboru............................................................................. 67

2.4.2 Čtení a zápis .................................................................................................. 69

2.5 Konzolové vstupy a v ý stu p y ...................................................................................... 70

2.5.1 Základní vstupy a výstupy............................................................................. 71

2.5.2 Některé další funkce ...................................................................................... 72

2.6 Souborový systém (C + + 1 7 )...................................................................................... 75

2.6.1 Cesta a základní operace s ní ...................................................................... 76

2.6.2 Práce s cílem c e s ty ......................................................................................... 78

2.6.3 Procházení adresáře......................................................................................... 79

2.6.4 Kopírování, mazání, přístupová oprávnění ................................................. 82

2.6.5 Vytvoření a přejmenování ............................................................................. 84

3 Lokalizace a internacionalizace 86

3.1 Nastavení národního prostředí................................................................................... 86

3.1.1 Jméno národního prostředí............................................................................. 86

3.1.2 Třída lo cale..................................................................................................... 90

3.2 Využití národního p ro stře d í...................................................................................... 92

3.2.1 Práce s jednotlivými znaky............................................................................. 92

3.2.2 Abecední řazení............................................................................................... 95

3.2.3 Formátování č íse l............................................................................................ 97

3.2.4 Formátování peněžních č á ste k ......................................................................... 100

3.2.5 Datum a čas........................................................................................................102

4 Znakové řetězce 103

4.1 Nulou ukončené znakové řetězce.................................................................................. 103

4.1.1 Funkce pro práci se znakovými řetězci .........................................................103

4.1.2 Řetězce obsahující vícebajtové z n a k y .............................................................106

4.1.3 Převody mezi řetězci různých typů v jazyce C ..............................................107

4.1.4 Převody mezi řetězci různých typů v jazyce C + + ....................................... 109

4.1.5 Převody znakových řetězců na čísla a naopak ..............................................111

4.1.6 Práce s obsahem p a m ě ti.................................................................................. 112

4.2 Objektové typy pro práci s řetězci............................................................................... 112

4.2.1 Třída strin g ........................................................................................................113

4.2.2 Řetězce obsahující vícebajtové z n a k y .............................................................120

4.2.3 Převody mezi různými typy řetězců................................................................120

4.3 Pohled na řetězec (C++17) ........................................................................................ 121

4.3.1 Základní o p erace...............................................................................................122

4.3.2 Operace, které mohou měnit pohled................................................................123

4.4 Regulární v ý ra z y ...........................................................................................................125

4.4.1 Regulární výrazy v C + + .................................................................................. 125

4.4.2 Nástroje pro práci s regulárními výrazy v C + + 1 1 .........................................125

4.4.3 Syntax regulárních výrazů podle jazyka ECM AScript...................................128

4.4.4 Nahrazování........................................................................................................137

4.4.5 Shoda celého řetě z c e........................................................................................ 139

4.4.6 Ladění regulárních v ý ra z ů ............................................................................... 139

7


OBSAH

5 Podprocesy a souběžnost 141

5.1 Základy práce s podprocesy..................................................................................... 141

5.1.1 Podproces a jeho sta v y .....................................................................................142

5.1.2 Základní operace s podprocesem..................................................................... 143

5.2 Synchronizace a komunikace........................................................................................148

5.2.1 Problémy při sdílení prostředků..................................................................... 148

5.2.2 Základní synchronizační nástroje v C + + 1 1.................................................... 150

5.2.3 Používání z á m k ů ..............................................................................................152

5.2.4 Model fungování p a m ě ti..................................................................................157

5.2.5 Atomické typy....................................................................................................159

5.2.6 Čekáme na dílčí výsledek..................................................................................162

5.2.7 Synchronizace sdílených ukazatelů.................................................................. 167

5.2.8 Proměnné vlastní podprocesu........................................................................ 169

5.3 Asynchronní zpracování ..............................................................................................171

5.3.1 Příslib budoucího výsledku (promise, fu tu re)................................................171

5.3.2 Balená úloha (třída packaged_task<>)......................................................... 176

5.3.3 Funkce a sy n co Q ...........................................................................................177

6 M atem atické výpočty 179

6.1 Numerické pole (šablona v a la r r a y o ) .........................................................................179

6.1.1 Deklarace numerického p o le ............................................................................179

6.1.2 Základní operace s numerickým p o le m ......................................................... 180

6.1.3 Přístup к prvkům numerického p o le................................................................184

6.2 Pseudonáhodná č ís la .................................................................................................... 190

6.2.1 Generátor pseudonáhodných čísel v jazyce C ..................................................191

6.2.2 Nestandardní nástroje v jazyce C ...................................................................191

6.2.3 Pseudónáhodná čísla v C++11: ú v o d .............................................................192

6.2.4 Stroje pro pseudonáhodná č ís la ......................................................................192

6.2.5 Adaptéry pro úpravu s tr o jů ............................................................................197

6.2.6 Inicializátor generátorů pseudonáhodných čísel (seed_seq)......................... 198

6.2.7 Skutečně náhodný stroj ..................................................................................199

6.2.8 Předdefinované generátory pseudonáhodných č íse l.......................................200

6.3 Matematické funkce a algoritm y..................................................................................211

6.3.1 Generické numerické operace............................................................................211

6.3.2 Výpočetní prostředí a práce s reálnými č ís ly ................................................213

6.3.3 Speciální matematické fu n k ce .........................................................................217

6.3.4 Aritmetika racionálních čísel............................................................................218

7 Kontejnery, iterátory a algoritm y 221

7.1 Co je c o ..........................................................................................................................221

7.2 Iterátory..........................................................................................................................222

7.2.1 Rozdělení ite ráto rů ...........................................................................................223

7.2.2 Získání a použití ite rá to rů ...............................................................................224

7.2.3 Platnost iterátorů..............................................................................................227

7.3 Kontejnery.......................................................................................................................227

7.3.1 Rozdělení kontejnerů........................................................................................227

7.3.2 Prvky kontejnerů..............................................................................................230

8


OBSAH

7.3.3 Vytvoření a zánik kontejnerů.........................................................................231

7.3.4 Přiřazování a záměna obsahu kontejnerů........................................................232

7.3.5 Přístup к prvkům ..............................................................................................233

7.3.6 Vkládání nových prvků, odstraňování p rv k ů ................................................234

7.3.7 Velikost a kapacita kontejneru........................................................................ 238

7.3.8 Hešování.............................................................................................................239

7.3.9 Adaptéry (fronta a zásobník) ........................................................................ 242

7.4 Algoritm y.....................................................................................................................245

7.4.1 Operace neměnící zpracovávaný kontejner ...................................................245

7.4.2 Operace měnící zpracovávaný kontejner.........................................................247

7.4.3 Rozdělování.......................................................................................................250

7.4.4 Řazení neboli tříd ě n í........................................................................................251

7.4.5 Binární vyhledávání...........................................................................................253

7.4.6 Slučování rozsahů..............................................................................................254

7.4.7 Množinové operace...........................................................................................255

7.4.8 Operace s h ald o u ..............................................................................................255

7.4.9 Minimum a m axim um .................................................................................... 256

7.4.10 Lexikografické porovnání................................................................................. 257

7.4.11 Permutace..........................................................................................................257

7.4.12 Paralelizace algoritmů (C + + 17)..................................................................... 257

8 Další nástroje ’■ 260

8.1 Datové kolekce, které nejsou kontejnery..................................................................... 260

8.1.1 Dvojice neboli pár ...........................................................................................260

8.1.2 n-tice (šablona t u p l e o ) ................................................................................. 262

8.1.3 Seznam inicializátorů........................................................................................268

8.1.4 Posloupnost b i t ů ..............................................................................................270

8.2 Funkční objekty ..........................................................................................................276

8.2.1 Univerzální funkční objekt (C++11) ............................................................ 276

8.2.2 Vazba vybraných parametrů (C++11) .........................................................278

8.2.3 Volání funkčního objektu (C + + 1 7 )............................................................... 280

8.2.4 Funkční objekty pro běžné o p e ra ce ............................................................... 282

8.2.5 Zavržené šablony funkčních objektů z C++98 ........................................... 284

8.3 Přepravky (C++17) 284

8.3.1 Typ o p tio n alo ..............................................................................................285

8.3.2 Typ v a r i a n t o .................................................................................................288

8.3.3 Typ a n y .............................................................................................................293

8.4 Datum a č a s...................................................................................................................295

8.4.1 Práce s datem a časem v jazyce C .................................................................. 295

8.4.2 Práce s datem a časem v C + + ........................................................................ 297

8.4.3 Vstupy a výstupy časových ú d a jů .................................................................. 302

8.5 Zpracování chyb.............................................................................................................306

8.5.1 A serce................................................................................................................306

8.5.2 Příznak chyby v globální prom ěnné...............................................................307

8.5.3 Chyby operačního systému a nízkoúrovňových API (C + + 11).....................309

8.5.4 Zabezpečené funkce v C i l .............................................................................. 309

8.6 Nástroje pro podporu program u................................................................................. 310

9


OBSAH

8.6.1 Komunikace programu s prostředím...............................................................311

8.6.2 Dlouhý skok......................................................................................................312

8.6.3 Práce se signály................................................................................................314

9 D atové typy za překladu 316

9.1 Kategorizace datových t y p ů .......................................................................................316

9.1.1 Primární kategorie datových ty p ů ..................................................................317

9.1.2 Jde o složený, či o základní ty p ? .....................................................................317

9.1.3 Další vlastnosti datových ty p ů ........................................................................318

9.1.4 Zjišťování podporovaných operací..................................................................318

9.2 Vlastnosti a vztahy datových typů............................................................................ 320

9.2.1 Zarovnání typu a rozsah pole ........................................................................320

9.2.2 Vztahy datových typů ....................................................................................320

9.3 Transformace datového ty p u .......................................................................................321

9.3.1 Cv-modifikátory................................................................................................ 321

9.3.2 Reference a ukazatele........................- .........................................................321

9.3.3 Typy se znaménkem a bez n ě j ........................................................................321

9.3.4 Odstranění rozsahu p o le .................................................................................321

9.3.5 Další transformace t y p ů .................................................................................322

Literatura 325

Rejstřík 327

10




       
Knihkupectví Knihy.ABZ.cz – online prodej | ABZ Knihy, a.s.