Správné vytvoření a otevření textového souboru pro čtení a zápis představuje



Podobné dokumenty
Strukturu lze funkci předat: (pole[i])+j. switch(výraz) velikost ukazatele

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15

Operační systémy. Cvičení 4: Programování v C pod Unixem

for (i = 0, j = 5; i < 10; i++) { // tělo cyklu }

Pointery II. Jan Hnilica Počítačové modelování 17

IUJCE 07/08 Přednáška č. 6

Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií

8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek

Koncepce (větších) programů. Základy programování 2 Tomáš Kühr

Struktura programu v době běhu

2 Datové typy v jazyce C

Základy programování (IZP)

IUJCE 07/08 Přednáška č. 4. v paměti neexistuje. v paměti existuje

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ý

Algoritmizace a programování. Ak. rok 2012/2013 vbp 1. ze 44

IUJCE Přednáška č. 11. další prvky globální proměnné, řízení viditelnosti proměnných, funkcí

- dělají se také pomocí #define - podobné (použitím) funkcím - předpřipravená jsou např. v ctype.h. - jak na vlastní makro:

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.

Ukazka knihy z internetoveho knihkupectvi

Dynamická vícerozměrná pole. Základy programování 2 Tomáš Kühr

Operační systémy. Cvičení 3: Programování v C pod Unixem

Základy programování (IZP)

Začínáme vážně programovat. Řídící struktury Přetypování Vstupně výstupní operace Vlastní tvorba programů

Bitové operátory a bitová pole. Úvod do programování 2 Tomáš Kühr

Pole stručný úvod do začátku, podrobně později - zatím statická pole (ne dynamicky) - číslují se od 0

PROGRAMOVÁNÍ V C++ CVIČENÍ

int ii char [16] double dd název adresa / proměnná N = nevyužito xxx xxx xxx N xxx xxx N xxx N

Základy programování (IZP)

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7

Úvod do programovacích jazyků (Java)

Programování v C++ 1, 1. cvičení

přetížení operátorů (o)

Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) 28. prosince Fakulta elektrotechniky a informatiky Katedra softwarových technologií

Úvod do programování - Java. Cvičení č.4

Preprocesor a koncepce (větších) programů. Úvod do programování 2 Tomáš Kühr

IUJCE 07/08 Přednáška č. 1

Práce se soubory. Základy programování 2 Tomáš Kühr

Algoritmizace a programování

Více o konstruktorech a destruktorech

ZPRO v "C" Ing. Vít Hanousek. verze 0.3

Pole a Funkce. Úvod do programování 1 Tomáš Kühr

Programovací jazyk C++ Hodina 1

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Základy programování (IZP)

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Programování v jazyce C pro chemiky (C2160) 3. Příkaz switch, příkaz cyklu for, operátory ++ a --, pole

Vícerozměrná pole. Úvod do programování 2 Tomáš Kühr

Programování v C++ 2, 4. cvičení

8 Třídy, objekty, metody, předávání argumentů metod

int => unsigned int => long => unsigned long => float => double => long double - tj. bude-li:

EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI

KTE / ZPE Informační technologie

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě

- jak udělat konstantu long int: L long velka = 78L;

Funkce, intuitivní chápání složitosti

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

6. lekce Úvod do jazyka C knihovny datové typy, definice proměnných základní struktura programu a jeho editace Miroslav Jílek

Úvod do programovacích jazyků (Java)

Příkaz while. while (podmínka) { příkaz; } Příklad: int i=0; while (i < 10) { System.out.println(i); i++; } // vypíše čísla od 0 do 9

Úvod do programování. Lekce 1

Odvozené a strukturované typy dat

10 Práce s řetězci - pokračování

Základní datové struktury

Opakování programování

Př. další použití pointerů

Jazyk C# a platforma.net

Funkční objekty v C++.

PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

Algoritmizace a programování

Lineární spojový seznam (úvod do dynamických datových struktur)

Paměť počítače. alg2 1

IAJCE Přednáška č. 8. double tprumer = (t1 + t2 + t3 + t4 + t5 + t6 + t7) / 7; Console.Write("\nPrumerna teplota je {0}", tprumer);

Teoretické minimum z PJV

Základy C++ I. Jan Hnilica Počítačové modelování 18

9. lekce Úvod do jazyka C 4. část Funkce, rekurze Editace, kompilace, spuštění Miroslav Jílek

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;

Programování v C++ 3, 3. cvičení

Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody

Ukazatele #2, dynamická alokace paměti

7. Datové typy v Javě

Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include <stdio.h>

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě

Práce se soubory. Úvod do programování 2 Tomáš Kühr

Řídicí struktury. alg3 1

PB071 Programování v jazyce C Jaro 2015

Tabulka symbolů. Vazba (binding) Vazba - příklad. Deklarace a definice. Miroslav Beneš Dušan Kolář

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Práce se soubory. Úvod do programování 2 Tomáš Kühr

Algoritmy I. Cvičení č. 2, 3 ALGI 2018/19

Programování v C++, 2. cvičení

Aplikace Embedded systémů v Mechatronice. Michal Bastl A2/713a

Práce s binárními soubory. Základy programování 2 Tomáš Kühr

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

Správa paměti. Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta, 2016

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Preprocesor. Karel Richta a kol. katedra počítačů FEL ČVUT v Praze. Karel Richta, Martin Hořeňovský, Aleš Hrabalík, 2016

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

Seminář Java II p.1/43

Jazyk C++ II. Šablony a implementace

2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu.

Transkript:

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 pro čtení a zápis představuje fopen( "./data.txt", "rb+")); fopen( "./data.txt", "r+")); fopen( "./data.txt", "w" )); fopen( "./data.txt", "w+" )); třída extern je implicitní pro globální proměnné proměnné typu ukazatel lokální proměnné Deklarace je

oznámení o existenci s rezervací paměti doplnění zbývajících vlastností oznámení o existenci bez rezervace paměti int a=3,b=2; a/b výsledek bude exponent reálné číslo celé číslo AUTO *ukauto ukauto = (AUTO*)malloc(sizeof(AUTO)); přístup k jeho datové položce pocetosob umožňuje *ukauto.pocetosob (*ukauto).pocetosob *(ukauto).pocetosob cyklus se i=2; while(--i){... } nikdy neprovede provede jednou provede 2x

provede 3x int a=3,b; b=a++; b=5 b=3 b=4 void main(){ f1(); } funkce f1 musí být před funkcí main definována nemusí být před funkcí main deklarována za předpokladu že vrací int nemusí být před funkcí main deklarována za předpokladu že vrací float musí být vždy před funkcí main deklarována operátor & je logický součet logický součin bitový součin bitový součet lokální proměnné vznikají na stacku na pevném disku

na heapu v registrech Při definici statického dvourozměrného pole musí být definován počet řádků i sloupců nemusí být definován počet řádků ani sloupců musí být definován pouze počet řádků musí být definován pouze počet sloupců Převod řetězce na celé číslo obstará funkce atoi itoa atod itof atof *(pole[i])+j adresa i-tého řádku hodnota prvku na souřadnicích i, j adresa prvku na souřadnicích i, j v které paměťové třídě je přístup k proměnné nejrychlejší extern static auto register

Dynamická alokace paměti s výchozí nulovou hodnotou obstará funkce malloc realloc calloc nullalloc Pokud máme: void *b; int a=3; přiřazení adresy proměnné a do ukazatele b provedeme příkazem: (*int)b=&a nelze provést provedeme: (int*)b=&a provedeme příkazem: (int)b=&a pokud je ve funkci definovaná proměnná v paměťové třídě static pak při jejím volání je hodnota proměnné náhodná zachována vždy 0 Deklarace funkce nemusí obsahovat

typ a počte parametrů tělo funkce návratový typ název funkce Co je v kódu špatně? int main(int argc, char* argv[]) { int a=97; char b=88; printf("hello "); int b=4; printf("%c",a); } return 0; printf("%c",a); char b=88; int b=4; char str[10]; str = "ahoj"; OK chyba - správně by bylo 'ahoj' chyba - správně by bylo 'ahoj\0' chyba - str není L-hodnota velikost ukazatele konstantní, 1 B

konstantní, 4 b podle datového typu konstantní, 4 B continue ukončuje nejvnitřnější cyklus pokračuje od deklarovaného návěští vynutí si opakování nejvnitřnější smyčky ukončuje vnější cyklus (pole[i])+j hodnota prvku na souřadnicích i, j adresa i-tého řádku adresa prvku na souřadnicích i, j operátor znamená logický součet bitový součin logický součin bitový součet dimenze pole je v jazyku C kontrolována při překladu kontroluje preprocesor kontrolována za běhu programu není kontrolována

int (funkce1)() je funkce vracející ukazatel na int funkce vracející int proměnná typu int ukazatel na funkci velikost ukazatele konstantní, 4 b podle datového typu konstantní, 1 B konstantní, 4 B do-while musí proběhnou alespoň jednou nemusí proběhnout ani jednou proběhne právě jednou