Számítástechnika I. BMEKOKAA előadás Mutatók, File Kezelés. Dr. Bécsi Tamás
|
|
- Béla Halász
- 9 évvel ezelőtt
- Látták:
Átírás
1 Számítástechnika I. BMEKOKAA előadás Mutatók, File Kezelés Dr. Bécsi Tamás
2 Dinamikus memóriafoglalás void * malloc ( size_t size ); Lefoglal size byte memóriát, visszatér az elejével Hiba esetén NULL a visszatérési érték void * calloc ( size_t num, size_t size ); Lefoglal size*num byte memóriát, és minden bíte értékét 0-ra állítja, majd visszatér az a memóriaterület elejével Hiba esetén NULL a visszatérési érték void * realloc ( void * ptr, size_t size ); Megváltoztatja a lefoglalt memóriaterület méretét Amennyiben az adott helyen nem fér el, új helyen foglalja le, és átmásolja a tartalmat Hiba esetén NULL a visszatérési érték void free ( void * ptr ); Felszabadítja a lefoglalt memóriát 2
3 Dinamikus memóriafoglalás sizeof A fordítás idején hatásos sizeof unáris operátor bármilyen C nyelvű objektum méretének meghatározására használható. A sizeof objektum és sizeof (típusnév) kifejezések egy egész számot adnak eredményül, ami a megadott objektum vagy adattípus bájtokban mért mérete. 3
4 Példa dinamikus memóriafoglalásra malloc #include<stdio.h> #include<stdlib.h> int main(void) unsigned m,i; double *t; printf("mekkora tomb kell? "); scanf("%u",&m); // Memóriafoglalás t=(double*)malloc(m*sizeof(double)); if(t==null) printf("sikertelen allokalas.\n"); return 1; // Innentől úgy használjuk, mint egy közönséges tömböt. for(i=0;i<m;i++) t[i]=i; for(i=m-1;i+1!=0;i--) printf("%g ",t[i]); // felszabadítás, ha már nem kell free(t); return 0; 4
5 Példa dinamikus memóriafoglalásra 2. realloc #include <stdio.h> #include <stdlib.h> int main() int *t,n=5,i,szam; t=(int*) malloc(n*sizeof(int)); for (i=0;i<n;i++) *(t+i)=i; Irj be egy szamot, es hozzafuzom:123 Ime: printf("irj be egy szamot, es hozzafuzom:"); scanf("%d",&szam); t=(int*) realloc(t,(n+1)*sizeof(int)); t[n]=szam; printf("ime:\n"); for (i=0;i<n+1;i++) printf("%d ",t[i]); free(t); 5
6 6.2. Struktúrák és függvények Struktúra mutatók Ha nagy struktúrát kell átadnunk egy függvénynek, akkor sokkal hatékonyabb, ha a struktúra mutatóját adjuk át és nem pedig a teljes struktúrát másoljuk át. A struktúra mutatójának deklarációja: struct pont *pp; Ez egy struct pont típusú struktúrát kijelölő mutatót hoz létre. Ha pp egy pont struktúrát címez, akkor *pp maga a struktúra, és (*pp).x, ill. (*pp).y pedig a struktúra tagjai. A pp értékét felhasználva pl. azt írhatjuk, hogy struct pont kezdet, *pp; pp = &kezdet; printf("kezdet: (%d, %d)\n", (*pp).x, (*pp).y); 6
7 6.2. Struktúrák és függvények Struktúra mutatók A zárójelre a (*pp).x kifejezésben szükség van, mert a. struktúratag operátor precedenciája nagyobb, mint a * operátoré. A *pp.x kifejezés azt jelentené, mint a *(pp.x), ami viszont szintaktikailag hibás, mivel jelen esetben x nem mutató. A struktúrák mutatóit gyakran használjuk rövidített jelölési formában. Ha p egy struktúra mutatója, akkor a p-> struktúratag kifejezés közvetlenül a struktúra megadott tagját címzi. 7
8 6.2. Struktúrák és függvények Struktúra mutatók A. és -> struktúraoperátorok a függvény argumentumát tartalmazó () kerek és az indexet tartalmazó [] szögletes zárójelekkel együtt a legmagasabb precedenciájú operátorok, így rendkívül szorosan kötnek. Például, ha adott a struct int hossz; char *str; *p; deklaráció, akkor a ++p->hossz kifejezés a hossz változót inkrementálja és nem a p-t, mivel a precedencia-szabályoknak és a végrehajtási sorrendnek megfelelő alapértelmezés ++(p->hossz). A kötés zárójelezéssel változtatható meg, pl. a (++p)->hossz a hossz változóhoz való hozzáférés előtt inkrementálja a p értékét, a (p++)->hossz pedig a hozzáférés után inkrementál. 8
9 File Kezelés Alapfogalmak Cél: Adatok tárolása számítógépen Kétféle file típust különböztetünk meg: szöveges (text) Olvasható file, (Jegyzettömb/Notepad stb.) Jellemzően szövegeket tartalmaz bináris (binary) Adatok kezelése olyan formátumban, ahogy a memóriában van. Alapvetően a kettő között nincs nagy különbség, csak néhány esetben, pld. a sorlezárásoknál 9
10 File Kezelés Lépések 1. File Mutató FILE *fp; 2. Megnyitás FILE *fopen(const char *filename, const char *mode); 3. Műveletek Pozícionálás Írás/olvasás 4. Bezárás int fclose(file *a_file); 10
11 File Megnyitása FILE *fopen(const char *filename, const char *mode); FILE *fopen(filenév, megnyitási mód); A filenév elérési úttal, vagy a nélkül tartalmazza a file nevét Sikertelen megnyitás esetén a file mutató NULL értékkel tér vissza Például: FILE *f; //File pointer f = fopen("c:\\proba\\teszt.txt","w");//megnyitás if (f==null) printf("hiba!"); return 2; 11
12 File kezelés Megnyitási módok r,w,a (read, write, append) b (binary) (hiánya esetén text mode) + (update) r w a r+ w+ a+ rb wb ab r+b w+b a+b rb+ wb+ ab+ Léteznie kell x x Létrehozás, ha létezik, törlődik x x Olvasható tetszőleges pozícióban x x x x Írható tetszőleges pozícióban x x x Csak a végére írhatunk (hozzáfűzés) x x 12
13 File Kezelés Írás text módban int fputs ( const char * str, FILE * stream ); Az str által átadott stringet írja a stream (file)-ba. \0 karakterig ír, az már nem kerül be Siker esetén egy nemnegatív számmal tér vissza int fputc ( int character, FILE * stream ); Az átadott character t írja a stream (file)-ba Siker esetén visszaadja a karaktert int fprintf ( FILE * stream, const char * format,... ); Hasonlóan működik, mint a printf, csak file-ba ír. 13
14 File Kezelés Írás text módban, példa int filecreate(char filename[]) FILE *f; //File mutató char c; int i; f = fopen(filename,"w"); // Megnyitás írásra (kiürítés) if (f==null) printf("hiba!"); return 1; for (i = 1; i <=4; i++) fputs("sor:",f); //Sor beírása fputs segítségével fprintf(f,"%d.", i); //fprintf, mint a printf for (c='a';c<'a'+i;c++) fputc(c,f); //Egy karakter beírása fprintf(f,"\n"); //Sor lezárása \n-el fclose(f); // file bezárása return 0; 14
15 File Kezelés Olvasás text módban char * fgets ( char * str, int num, FILE * stream ); str-be karaktereket olvas be a stream (file)-ból Az olvasás (num-1) karakterszám elérésekor, új sor, vagy file vége esetén ér véget. Hiba esetén, illetve ha már nincs mit beolvasni a file végéről, NULL mutatóval tér vissza int fgetc ( FILE * stream ); Visszaadja a karaktert, az aktuális file pozícióból, a pozíció egyet lép Hiba, vagy file vége esetén EOF (-1) a visszatérési érték int fscanf ( FILE * stream, const char * format,... ); Hasonlóan működik, mint a scanf, csak file-ból olvas. 15
16 File Kezelés Olvasás text módban, fgetc int listfile(char filename[]) FILE *f; //File pointer char c; // Megnyitás olvasásra if ((f = fopen(filename,"r"))==null) return 1; c=fgetc(f); while(c!=eof) printf("%c",c); c=fgetc(f); fclose(f); // File bezárása return 0; 16
17 File Kezelés Olvasás text módban, fgets int readline_file(char filename[]) FILE *f; //File pointer char s[200]; f = fopen(filename,"r"); // megnyitás olvasásra while(fgets(s,200,f)!=0) printf("%s",s); fclose(f); //Bezárás return 0; 17
18 File Kezelés Hozzáfűzés int append_file(char filename[]) FILE *f; //File pointer char s[200]; f = fopen(filename,"a"); // Megnyitás hozzáfűzésre fprintf(f,"hu, de hozzafuztem egy sort..."); fclose(f); 18
19 File kezelés Pozícionálás int fseek ( FILE * stream, long int offset, int origin ); A File olvasás/írás aktuális pozícióját állítja be az origin-ben megadott helyhez viszonyítva offset távolságra Írás és Olvasásra megnyitott file-ok esetén az fseek meghívása szükséges a kétféle operáció közötti váltáshoz. Siker esetén 0-val tér vissza. Konstans kifejezés az origin mezőben SEEK_SET SEEK_CUR SEEK_END referencia pozíció A file Eleje Az aktuális pozíció A file vége 19
20 File kezelés Pozíció lekérés long int ftell ( FILE * stream ); Visszaadja az aktuális pozíciót a File-ban Hiba esetén a visszatérési érték -1 20
21 File kezelés Pozícionálás, példa int readwrite_char_file(char filename[]) FILE *f; //File pointer char c; f = fopen(filename,"r+"); // olvasás/írás c=fgetc(f); while(c!=eof) if (c=='.') fseek(f,-1,seek_cur); //Pozícionálás fputc(' ',f); fseek(f,0,seek_cur); //Csak a módok közötti váltás miatt! c=fgetc(f); fclose(f); // File bezárása return 0; 21
22 File Kezelés Bináris mód size_t fread ( void * ptr, size_t size, size_t count, FILE * stream ); ptr-be olvas count darab size byte méretű adatot a stream file-ból, az aktuális file pozícióból. Visszatérési értéke a sikeresen beolvasott adatok száma. size_t fwrite ( const void * ptr, size_t size, size_t count, FILE * stream ); count darab size byte méretű adatot ír a stream file-ba, az aktuális file pozícióban. Az aktuális file pozíció értelemszerűen az írás végére változik visszatérési értéke a beírt elemek száma (count siker esetén) 22
23 Bináris file kezelés Példa 1 void decimalfile() int i; FILE *f=fopen("szamok.dat", "wb"); for (i=0;i<10;i++) fwrite(&i,sizeof (int),1,f); fclose(f); 23
24 Bináris file kezelés Példa 2 struktúra struct tember int kor;char nev[11];; 1: mbc 1 2: bbc 7 void createfile(char fn[]) 3: bbc 38 4: zbc 30 struct tember e=65,"abc"; 5: cbc 24 int i; FILE *f=fopen(fn, "wb"); srand(time(0)); for (i=0;i<5;i++) e.nev[0]='a'+rand()%26; e.kor=rand()%40; fwrite(&e,sizeof (struct tember),1,f); fclose(f); 24
25 Bináris file kezelés Példa 3 listázás void listfile(char fn[]) struct tember e=65,"abc"; int i=1; FILE *f=fopen(fn, "rb"); while (fread(&e,sizeof (struct tember),1,f)) printf("%2d: %5s %d \n",i++,e.nev,e.kor); fclose(f); 1: mbc 1 2: bbc 7 3: bbc 38 4: zbc 30 5: cbc 24 25
A C programozási nyelv VI. Parancssori argumentumok File kezelés
A C programozási nyelv VI. Parancssori argumentumok File kezelés Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv VI. (Parancssori argumentum, file kezelés) CBEV6 / 1 Parancssori
Programozás I. - 9. gyakorlat
Programozás I. - 9. gyakorlat Mutatók, dinamikus memóriakezelés Tar Péter 1 Pannon Egyetem M szaki Informatikai Kar Rendszer- és Számítástudományi Tanszék Utolsó frissítés: November 9, 2009 1 tar@dcs.vein.hu
Programozás II. Fájlkezelés
Programozás II. Fájlkezelés Kocsis Zoltán Tamás 2013. 03. 28 Fájlkezelés Az stdio.h-ban megadott FILE* típusú pointerrel és függvényekkel lehet elérni a fájlunkat. FILE *fp; /* fájl mutató (file pointer/handle)
Adatbázisrendszerek I. Fájlszintű adattárolás C-ben
Adatbázisrendszerek I. Fájlszintű adattárolás C-ben Feladat: Tervezzen meg egy fájlszintű adatnyilvántartó rendszert és implementálja C nyelven. A tárolandó adatok: autó rendszáma, típusa, színe, gyártási
Programozás 5. Dr. Iványi Péter
Programozás 5. Dr. Iványi Péter 1 Struktúra Véges számú különböző típusú, logikailag összetartozó változó együttese, amelyeket az egyszerű kezelhetőség érdekében gyűjtünk össze. Rekord-nak felel meg struct
Miről lesz ma szó? A PROGAMOZÁS ALAPJAI 1. Dinamikus változók. Dinamikus változók. Dinamikus változók. Dinamikus változók. 7.
Miről lesz ma szó? A PROGAMOZÁS ALAPJAI 1 Vitéz András egyetemi adjunktus BME Híradástechnikai Tanszék vitez@hit.bme.hu Dinamikus memóriakezelés Dinamikus tömbök Dinamikus stringek Program kapcsolata a
Járműfedélzeti rendszerek II. 3. előadás Dr. Bécsi Tamás
Járműfedélzeti rendszerek II. 3. előadás Dr. Bécsi Tamás 5.3. Mutatók,tömbök A mutató vagy pointer olyan változó, amely egy másik változó címét tartalmazza. A C nyelvű programokban gyakran használják a
Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3)
Programozás alapjai C nyelv 5. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.10.17. -1- Tömbök Azonos típusú adatok tárolására. Index
Adatbázisrendszerek I. File-szintű adattárolás C-ben. 1. gyakorlat
Adatbázisrendszerek I. File-szintű adattárolás C-ben 1. gyakorlat Feladat: Tervezzen meg egy fájlszintű adatnyilvántartó rendszert és implementálja C nyelven. A tárolandó adatok: autó rendszáma, típusa,
Információs Technológia
Információs Technológia (Struktúra, mutatók, függvényhívás) Fodor Attila Pannon Egyetem Műszaki Informatika Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010 október 14/21. Struktúra
Példák tematikus csoportosításban
1. fejezet Példák tematikus csoportosításban 1.1. A legegyszerűbb feladatok 1.1. feladat. Írjon programot, amely billentyűzetről látható karaktereket olvas mindaddig, amíg a @ karaktert meg nem kapja.
Bevezetés a C++ programozási nyelvbe
Miskolci Egyetem Általános Informatikai Tanszék Bevezetés a C++ programozási nyelvbe Oktatási segédlet Összeállította: Ficsor Lajos 2001. 1. A C++ programozási nyelv története A C++ programozási nyelv
malloc free malloc free int sum(int a[4]) { return a[0] + a[1] + a[2] + a[3]; }
malloc free malloc free int sum(int a[4]) { return a[0] + a[1] + a[2] + a[3]; int main() { int b[4] = {1, 2, 3, 4}; printf("%d\n", sum(b)); return 0; \ \t \n \r \r\n \r string char* \0 a l m a \0 "alma"
Körkörös listák. fej. utolsó. utolsó. fej
Körkörös listák fej utolsó fej utolsó Példa. Kiszámolós játék. Körben áll n gyermek. k-asával kiszámoljuk őket. Minden k-adik kilép a körből. Az nyer, aki utolsónak marad. #include using namespace
A C programozási nyelv V. Struktúra Dinamikus memóriakezelés
A C programozási nyelv V. Struktúra Dinamikus memóriakezelés Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv V. (Struktúra, memóriakezelés) CBEV5 / 1 A struktúra deklarációja 1.
A táblázatkezelő felépítése
A táblázatkezelés A táblázatkezelő felépítése A táblázatkezelő felépítése Címsor: A munkafüzet címét mutatja, és a program nevét, amivel megnyitottam. Menüszalag: A menüsor segítségével használhatjuk az
Országzászlók (2015. május 27., Sz14)
Országzászlók (2015. május 27., Sz14) Írjon programot, amely a standard bemenetről állományvégjelig soronként egy-egy ország zászlójára vonatkozó adatokat olvas be! Az egyes zászlóknál azt tartjuk nyilván,
Programozás C nyelven (10a. ELŐADÁS) Sapientia EMTE
Programozás C nyelven (10a. ELŐADÁS) Sapientia EMTE 2015-16 1 Karakterláncok A karakterláncokat char-tömbökben tároljuk. Egy karakterlánc végét a karakterlánc-végjel jelzi: \0 char s[10] = sapi ;... s
Ablakok használata. 1. ábra Programablak
Ha elindítunk egy programot, az egy Ablakban jelenik meg. A program az üzeneteit szintén egy újabb ablakban írja ki számunkra. Mindig ablakokban dolgozunk. Az ismertetett operációs rendszer is az Ablakok
Bevezetés a C programozási nyelvbe. Az Általános Informatikai Tanszék C nyelvi kódolási szabványa
Miskolci Egyetem Általános Informatikai Tanszék Bevezetés a C programozási nyelvbe Az Általános Informatikai Tanszék C nyelvi kódolási szabványa Oktatási segédletek a levelező műszaki informatikus hallgatók
Információs Technológia
Információs Technológia A C programozási nyelv (Típusok és operátorok) Fodor Attila Pannon Egyetem Műszaki Informatika Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010 szeptember
Programozás alapjai II. (9. ea) C++ többszörös öröklés, cast, perzisztencia
Öröklés ism. Programozás alapjai II. (9. ea) C++ többszörös öröklés, cast, perzisztencia Szeberényi Imre BME IIT Egy osztályból olyan újabb osztályokat származtatunk, amelyek rendelkeznek
PHP II. WEB technológiák. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) PHP II. 2014 1 / 19
PHP II. WEB technológiák Tóth Zsolt Miskolci Egyetem 2014 Tóth Zsolt (Miskolci Egyetem) PHP II. 2014 1 / 19 Tartalomjegyzék Objektum Orientált Programozás 1 Objektum Orientált Programozás Öröklődés 2 Fájlkezelés
Dinamikus memóriakezelés Fájlkezelés
Dinamikus nd tömb Fájlkezelés Dinamikus memóriakezelés Fájlkezelés A programozás alapjai I. Hálózati Rendszerek és Szolgáltatások Tanszék Farkas Balázs, Fiala Péter, Vitéz András, Zsóka Zoltán 2016. október
Mikrokontrollerek. Tihanyi Attila 2007. május 8
Mikrokontrollerek Tihanyi Attila 2007. május 8 !!! ZH!!! Pótlási lehetőség külön egyeztetve Feladatok: 2007. május 15. Megoldási idő 45 perc! Feladatok: Első ZH is itt pótolható Munkapont számítás Munkapont
A C programozási nyelv VI. Parancssori argumentumok File kezelés
A C programozási nyelv VI. Parancssori argumentumok File kezelés Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv VI. (Parancssori argumentum, file kezelés) CBEV6 / 1 Parancssori
Programozás 3. Dr. Iványi Péter
Programozás 3. Dr. Iványi Péter 1 Egy operandus művelet operandus operandus művelet Operátorok Két operandus operandus1 művelet operandus2 2 Aritmetikai műveletek + : összeadás -: kivonás * : szorzás /
Programozás C- és Matlab nyelven C programozás kurzus BMEKOKAM603 Console I/O, Operátorok. Dr. Bécsi Tamás 2. Előadás
Programozás C- és Matlab nyelven C programozás kurzus BMEKOKAM603 Console I/O, Operátorok Dr. Bécsi Tamás 2. Előadás Számábrázolás Egész számok Számrendszerek Kettes számrendszer Számábrázolás hossza Negatív
117. AA Megoldó Alfréd AA 117.
Programozás alapjai 2. (inf.) pót-pótzárthelyi 2011.05.26. gyak. hiányzás: kzhpont: MEG123 IB.028/117. NZH:0 PZH:n Minden beadandó megoldását a feladatlapra, a feladat után írja! A megoldások során feltételezheti,
C++ programozási nyelv Struktúrák a C++ nyelvben Gyakorlat
C++ programozási nyelv Struktúrák a C++ nyelvben Gyakorlat Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. szeptember A C++ programozási nyelv Soós Sándor 1/12 Input-output
Programozás C nyelven (9. ELŐADÁS) Sapientia EMTE
Programozás C nyelven (9. ELŐADÁS) Sapientia EMTE 2015-16 1 POINTEREK ismétlés double x = 3.14, *px = &x; unsigned char *p, *p1, *p2; p1 = (unsigned char*)px; p2 = p1 + sizeof(double); for ( p = p2-1 ;
Programozás alapjai C nyelv 8. gyakorlat. Mutatók és címek (ism.) Indirekció (ism)
Programozás alapjai C nyelv 8. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.11.07. -1- Mutatók és címek (ism.) Minden változó és függvény
Mutatók és címek (ism.) Programozás alapjai C nyelv 8. gyakorlat. Indirekció (ism) Néhány dolog érthetőbb (ism.) Változók a memóriában
Programozás alapjai C nyelv 8. gyakorlat Szeberényi mre BME T Programozás alapjai. (C nyelv, gyakorlat) BME-T Sz.. 2005.11.07. -1- Mutatók és címek (ism.) Minden változó és függvény
3. Gyakorlat Ismerkedés a Java nyelvvel
3. Gyakorlat Ismerkedés a Java nyelvvel Parancssori argumentumok Minden Java programnak adhatunk indításkor paraméterek, ezeket a program egy tömbben tárolja. public static void main( String[] args ) Az
Osztály szint tagok. Krizsán Zoltán 1 [2012. március 12.] Objektumorientált programozás C# alapokon tananyag
Krizsán Zoltán 1 [2012. március 12.] Általános Informatikai Tanszék Miskolci Egyetem Objektumorientált programozás C# alapokon tananyag Tartalom Bevezetés Bevezetés Outline Bevezetés Bevezetés Példány
1. Alapok. Programozás II
1. Alapok Programozás II Elérhetőség Név: Smidla József Elérhetőség: smidla dcs.uni-pannon.hu Szoba: I916 2 Irodalom Bjarne Stroustrup: A C++ programozási nyelv 3 Irodalom Erich Gamma, Richard Helm, Ralph
7. gyakorlat Sorozatok, Fájlkezelés
7. gyakorlat Sorozatok, Fájlkezelés Házi ellenőrzés - f0124 Írj programot, amelyben a felhasználónak egy, a program által meghatározott számot kell kitalálnia! A felhasználó tippjét a program vagy elfogadja,
Bevezetés a programozásba 2
Bevezetés a programozásba 2 7. Előadás: STL konténerek, sablonok http://digitus.itk.ppke.hu/~flugi/ Vector int int main() { vector v(10); int int sum=0; for for (int i=0;i
VHDL szimuláció. Tervezés. Labor II. Dr. Hidvégi Timót
VHDL szimuláció Labor II. Dr. Hidvégi Timót Tervezés 1 Lefoglalt szavak abs access after alias all and architecture array assert attribute block body buffer bus case component configuration constant disconnect
Programozás alapjai 1. (BMEVIEEA100)
Programozás alapjai 1. (BMEVIEEA100) Gyakorlat anyaga az 6. oktatási héten (4-5. gyakorlat) A 7. oktatási hét péntekje előbbre csúszik a 6. hét szombatjára, ezért a 7. heti anyagot a szokottnál előbb kapjátok
Programozás C nyelven (13. ELŐADÁS) Sapientia EMTE
Programozás C nyelven (13. ELŐADÁS) Sapientia EMTE 2015-16 1 Olvasás/írás (ANSI C) ille tyűzetről/képer yőre (scanf/printf) scanf: olvasás a standard inputról (stdin) A sta dard i put i pli ite a ille
Feladat: Hogyan tudunk létrehozni egy olyan vector nevű tömb típust, amely egy háromdimenziós térbeli vektort reprezentál?
Típus definiálás Ennek általános alakja: typedef típus név Feladat: Hogyan tudunk létrehozni egy olyan vector nevű tömb típust, amely egy háromdimenziós térbeli vektort reprezentál? typedef double vector[3];
Programozás 6. Dr. Iványi Péter
Programozás 6. Dr. Iványi Péter 1 Előfeldolgozás része Makrók A forrás kódban elvégzi a helyettesítéseket a fordító Csak egyszer végez helyettesítést Nem olyan makrók, mint a LISP vagy Scheme esetén Csak
HENYIR felhasználói dokumentáció
HENYIR felhasználói dokumentáció A HENYIR alkalmazás segítségével az egészségügyi dolgozók foglalkoztatásával kapcsolatos adatokat tartalmazó űrlap beküldését lehet elvégezni. Az alkalmazás a www.antsz.hu
Párhuzamos programozás
Párhuzamos programozás Rendezések Készítette: Györkő Péter EHA: GYPMABT.ELTE Nappali tagozat Programtervező matematikus szak Budapest, 2009 május 9. Bevezetés A számítástechnikában felmerülő problémák
C memóriakezelés. Mutató típusú változót egy típus és a változó neve elé írt csillag karakterrel hozhatjuk létre.
C memóriakezelés Ez a kis segédanyag az adatszerkezetek órán használt eszközök megértését hivatott elősegíteni. A teljesség igénye nélkül kerül bemutatásra a mutató típus és a dinamikus memóriakezelés.
C programozás. 2 óra A C nyelv típusai
C programozás 2 óra A C nyelv típusai 1. Előző óra, rövid összefoglalás A C nyelvű programok feldolgozása forráskód (forrásprogram) C file (code.c) C előfeldolgozó (preprocesszor) + C fordító (compiler)
0.1. Mi az a standard be- és kimenet?... 1. 0.2. A két mintafeladat leírása
KöMaL Technikai tanácsok az I- és S-jelű pontversenyhez A standard be- és kimenet kezelése Tartalomjegyzék 0.1. Mi az a standard be- és kimenet?............................. 1 0.2. A két mintafeladat leírása.................................
A PROGAMOZÁS ALAPJAI 1. Függvény mint függvény paramétere. Függvény mint függvény paramétere. Függvény mint függvény paramétere
2012. április 10. A PROGAMOZÁS ALAPJAI 1 Vitéz András egyetemi adjunktus BME Híradástechnikai Tanszék vitez@hit.bme.hu Miről lesz ma szó? alaki szabályok használata - mintapélda használata - mintapélda
Struktúrák (struct) A struktúra szerkezetét meghatározó deklaráció általános formája:
Struktúrák (struct) A struktúra egy olyan összetett adatszerkezet, amely nemcsak azonos típusú elemeket rendelhet össze. A struktúra definíciójában leírjuk, hogy a struktúra hogyan épül fel. A struktúra
11. gyakorlat Sturktúrák használata. 1. Definiáljon dátum típust. Olvasson be két dátumot, és határozza meg melyik a régebbi.
11. gyakorlat Sturktúrák használata I. Új típus új műveletekkel 1. Definiáljon dátum típust. Olvasson be két dátumot, és határozza meg melyik a régebbi. typedef struct datum { int ev; int ho; int nap;
7. gyakorlat. Fájlkezelés IO haladó Függvények haladó
7. gyakorlat Fájlkezelés IO haladó Függvények haladó Fájlkezelés A C-ben a fájlkezelés ún. fájlstream-eken keresztül történik, melyek puffereltek ha valamit a streamre küldünk, nem biztos, hogy rögtön
Programozási Nyelvek: C++
Programozási Nyelvek: C++ Gyakorló feladatkönyv Umann Kristóf #include "CppStudent.h" int main() { CppStudent *reader = new CppStudent(); reader->readbook(); while(!reader->doesunderstand()) { reader->exercise();
KOVÁCS BÉLA, MATEMATIKA I.
KOVÁCS BÉLA, MATEmATIkA I 10 X DETERmINÁNSOk 1 DETERmINÁNS ÉRTELmEZÉSE, TULAJdONSÁGAI A másodrendű determináns értelmezése: A harmadrendű determináns értelmezése és annak első sor szerinti kifejtése: A
Bevezetés a C++ programozásba
Bevezetés a C++ programozásba A program fogalma: A program nem más, mint számítógép által végrehajtható utasítások sorozata. A számítógépes programokat különféle programnyelveken írhatjuk. Ilyen nyelvek
C# gyorstalpaló. Készítette: Major Péter
C# gyorstalpaló Készítette: Major Péter Adattípusok Logikai változó Egész szám (*: előjel nélküli) Lebegőponto s szám Típus Típusnév másképpen (egyenértékű) Helyigény (bit) Példa bool Boolean 8 (!) true,
Bevezetés a Programozásba II 11. előadás. Adatszerkezetek megvalósítása. Adatszerkezetek megvalósítása Adatszerkezetek
Pázmány Péter Katolikus Egyetem Információs Technológiai és Bionikai Kar Bevezetés a Programozásba II 11. előadás 2014.05.12. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Adatszerkezetek
Programozás I gyakorlat. 10. Stringek, mutatók
Programozás I gyakorlat 10. Stringek, mutatók Karakter típus A char típusú változókat karakerként is kiírhatjuk: #include char c = 'A'; printf("%c\n", c); c = 80; printf("%c\n", c); printf("%c\n",
Szövegek C++ -ban, a string osztály
Szövegek C++ -ban, a string osztály A string osztály a Szabványos C++ könyvtár (Standard Template Library) része és bár az objektum-orientált programozásról, az osztályokról, csak később esik szó, a string
C PROGRAMOZÁS KÖZÉPISKOLÁSOKNAK...
1 Tartalomjegyzék 1 TARTALOMJEGYZÉK...1 2 C PROGRAMOZÁS KÖZÉPISKOLÁSOKNAK...2 2.1 AZ ELSŐ C PROGRAM...2 2.2 MEGJEGYZÉSEK...2 2.3 A VÁLTOZÓKRÓL...2 2.3.1 Felhasználói típus...4 2.4 KONSTANSOK...5 2.4.1
Példatár a Programozás 1 tárgyhoz
Kósa Márk Pánovics János Példatár a Programozás 1 tárgyhoz Juhász István feladatsoraiból mobidiák könyvtár Kósa Márk Pánovics János Példatár a Programozás 1 tárgyhoz Juhász István feladatsoraiból mobidiák
Programozás I gyakorlat. 5. Struktúrák
Programozás I gyakorlat 5. Struktúrák Bemelegítés Írj programot, amely beolvassa 5 autó adatait, majd kiírja az adatokat a képernyőre. Egy autóról a következőket tároljuk: maximális sebesség fogyasztás
TCP/IP SOCKET INTERFACE
TCP/IP SOCKET INTERFACE PROGRAMOZÁSA Számítógép-hálózatok (BMEVIHA215) 2014. április 24., Budapest Dr. Lencse Gábor tudományos főmunkatárs BME Hálózati Rendszerek és Szolgáltatások Tanszék lencse@hit.bme.hu
Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 6.ELŐADÁS. Fájlkezelés PHP-ben
Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 6.ELŐADÁS 2015-2016 Fájlkezelés PHP-ben Fájlok és könyvtárak kezelése 2 A PHP a Javascript-hez hasonlóan, nem képes a felhasználó merevlemezén
Járműfedélzeti rendszerek II. 4. előadás Dr. Bécsi Tamás
Járműfedélzeti rendszerek II. 4. előadás Dr. Bécsi Tamás 6. Struktúrák A struktúra egy vagy több, esetleg különböző típusú változó együttese, amelyet a kényelmes kezelhetőség céljából önálló névvel látunk
Programozás alapjai II. (2. ea) C++
Programozás alapjai II. (2. ea) C++ C++ kialakulása, nem OOP újdonságok: Szeberényi Imre BME IIT M Ű E G Y T E M 1 7 8 2 C++ programozási nyelv BME-IIT Sz.I. 2011.02.15. -1- C++ kialakulása
Programozás alapjai II. (2. ea) C++
Programozás alapjai II. (2. ea) C++ C++ kialakulása, nem OOP újdonságok: Szeberényi Imre BME IIT Veszélyforrások csökkentése C + javítások C++ kialakulása C++ Objektum orientált szemlélet
EPER E-KATA integráció
EPER E-KATA integráció 1. Összhang a Hivatalban A hivatalban használt szoftverek összekapcsolása, integrálása révén az egyes osztályok, nyilvántartások között egyezőség jön létre. Mit is jelent az integráció?
C programozási nyelv Pointerek, tömbök, pointer aritmetika
C programozási nyelv Pointerek, tömbök, pointer aritmetika Dr. Schuster György 2011. június 16. C programozási nyelv Pointerek, tömbök, pointer aritmetika 2011. június 16. 1 / 15 Pointerek (mutatók) Pointerek
Arany Dániel Matematikai Tanulóverseny 2011/2012-es tanév első (iskolai) forduló haladók I. kategória
Bolyai János Matematikai Társulat Arany Dániel Matematikai Tanulóverseny 011/01-es tanév első (iskolai) forduló haladók I. kategória Megoldások és javítási útmutató 1. Az ábrán látható ABC derékszögű háromszög
Programozási alapismeretek :: beadandó feladat. Felhasználói dokumentáció. Molnár Tamás MOTIABT.ELTE motiabt@inf.elte.
Programozási alapismeretek :: beadandó feladat Készítő adatai Név: Molnár Tamás EHA: MOTIABT.ELTE E-mail cím: motiabt@inf.elte.hu Gyakorlatvezető: Horváth László Feladat sorszáma: 23. Felhasználói dokumentáció
1. Feladat: beolvas két számot úgy, hogy a-ba kerüljön a nagyobb
1. Feladat: beolvas két számot úgy, hogy a-ba kerüljön a nagyobb #include main() { int a, b; printf( "a=" ); scanf( "%d", &a ); printf( "b=" ); scanf( "%d", &b ); if( a< b ) { inttmp = a; a =
OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek
OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN vizsgatételek 1. Az objektumorientált programozás szemlélete, az objektum fogalma 2. Az objektumorientált programozás alapelvei 3. A Java nyelv története, alapvető
6. gyakorlat Egydimenziós numerikus tömbök kezelése, tömbi algoritmusok
6. gyakorlat Egydimenziós numerikus tömbök kezelése, tömbi algoritmusok 1. feladat: Az EURO árfolyamát egy negyedéven keresztül hetente nyilvántartjuk (HUF / EUR). Írjon C programokat az alábbi kérdések
A döntő feladatai. valós számok!
OKTV 006/007. A döntő feladatai. Legyenek az x ( a + d ) x + ad bc 0 egyenlet gyökei az x és x valós számok! Bizonyítsa be, hogy ekkor az y ( a + d + abc + bcd ) y + ( ad bc) 0 egyenlet gyökei az y x és
Lineáris algebra gyakorlat
Lineáris algebra gyakorlat 3 gyakorlat Gyakorlatvezet : Bogya Norbert 2012 február 27 Bogya Norbert Lineáris algebra gyakorlat (3 gyakorlat) Tartalom Egyenletrendszerek Cramer-szabály 1 Egyenletrendszerek
A Hozzárendelési feladat megoldása Magyar-módszerrel
A Hozzárendelési feladat megoldása Magyar-módszerrel Virtuális vállalat 2013-2014/1. félév 3. gyakorlat Dr. Kulcsár Gyula A Hozzárendelési feladat Adott meghatározott számú gép és ugyanannyi független
Stack Vezérlés szerkezet Adat 2.
Stack Vezérlés szerkezet Adat 2. Kód visszafejtés. Izsó Tamás 2013. november 14. Izsó Tamás Stack Vezérlés szerkezet Adat 2./ 1 Változó típusú paraméterekátadása 1. #include < s t d i o. h> int64 myfunc
Az aktiválódásoknak azonban itt még nincs vége, ugyanis az aktiválódások 30 évenként ismétlődnek!
1 Mindannyiunk életében előfordulnak jelentős évek, amikor is egy-egy esemény hatására a sorsunk új irányt vesz. Bár ezen események többségének ott és akkor kevésbé tulajdonítunk jelentőséget, csak idővel,
Csoportosított adatok megjelenítése sorhalmaz függvények használatával
Csoportosított adatok megjelenítése sorhalmaz függvények használatával Célkitűzés A használható sorhalmaz függvények azonosítása A sorhalmaz függvények használatának leírása Adatok csoportosítása a GROUP
Java II. I A Java programozási nyelv alapelemei
Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 02. 19. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve az annak
Adatok ábrázolása, adattípusok. Összefoglalás
Adatok ábrázolása, adattípusok Összefoglalás Adatok ábrázolása, adattípusok Számítógépes rendszerek működés: információfeldolgozás IPO: input-process-output modell információ tárolása adatok formájában
Az első lépések. A Start menüből válasszuk ki a Minden program parancsot. A megjelenő listában kattintsunk rá az indítandó program nevére.
A számítógép elindítása A számítógépet felépítő eszközöket (hardver elemeket) a számítógépház foglalja magába. A ház különböző méretű, kialakítású lehet. A hátoldalán a beépített elemek csatlakozói, előlapján
Bevezetés Kiíratás Beolvasás Formázás Fájlkezelés Gyakorló feladatok C++ I/O. Bevezetés. Izsó Tamás február 20. Izsó Tamás C++ I/O / 1
C++ I/O Bevezetés Izsó Tamás 2014. február 20. Izsó Tamás C++ I/O / 1 Section 1 Bevezetés Izsó Tamás C++ I/O / 2 Irodalom Izsó Tamás C++ I/O / 3 Paraméter illesztés függvénynév túlterhelés esetén 1 Pontos
INFORMATIKAI ALAPISMERETEK
0611 ÉRETTSÉGI VIZSGA 2006. május 18. INFORMATIKAI ALAPISMERETEK KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ OKTATÁSI MINISZTÉRIUM Fontos tudnivalók Általános megjegyzések: Ha egy
Programozas 1. Strukturak, mutatok
Programozas 1 Strukturak, mutatok Strukturak Tömb: több egyforma típusú változó együttese Struktúra: több különböző típusú de logikailag egybetartozó változó együttese, amelyet az egyszerű kezelhetőség
Analízis elo adások. Vajda István. 2012. október 3. Neumann János Informatika Kar Óbudai Egyetem. Vajda István (Óbudai Egyetem)
Vajda István Neumann János Informatika Kar Óbudai Egyetem / 40 Fogalmak A függvények értelmezése Definíció: Az (A, B ; R ) bináris relációt függvénynek nevezzük, ha bármely a A -hoz pontosan egy olyan
C# nyelv alapjai. Krizsán Zoltán 1. Objektumorientált programozás C# alapokon tananyag. Általános Informatikai Tanszék Miskolci Egyetem
C# nyelv alapjai Krizsán Zoltán 1 Általános Informatikai Tanszék Miskolci Egyetem Objektumorientált programozás C# alapokon tananyag Tartalom Bevezetés Lokális változó Utasítások Szójáték Why do all real
AWP 4.4.4 TELEPÍTÉSE- WINDOWS7 64 OPERÁCIÓS RENDSZEREN
Hatályos: 2014. február 13. napjától AWP 4.4.4 TELEPÍTÉSE- WINDOWS7 64 OPERÁCIÓS RENDSZEREN Telepítési segédlet 1054 Budapest, Vadász utca 31. Telefon: (1) 428-5600, (1) 269-2270 Fax: (1) 269-5458 www.giro.hu
A Felhasználónév és Jelszó mezőkbe írjuk be az adatainkat, majd kattintsunk a Bejelentkezés gombra, vagy üssük le az Enter billentyűt.
A GMAIL levelező rendszer indítása Indítsuk el a számítógépünkre telepített internet böngésző programunkat. (pl. Internet Explorer, Google Chrome, Mozilla Firefox, stb.) A böngésző címsorába írjuk be:
1. Metrótörténet. A feladat folytatása a következő oldalon található. Informatika emelt szint. m2_blaha.jpg, m3_nagyvaradter.jpg és m4_furopajzs.jpg.
1. Metrótörténet A fővárosi metróhálózat a tömegközlekedés gerincét adja. A vonalak építésének története egészen a XIX. század végéig nyúlik vissza. Feladata, hogy készítse el a négy metróvonal történetét
tétel: különböző típusú adatokat csoportosít, ezeket egyetlen adatként kezeli, de hozzáférhetünk az elemeihez is
A tétel (record) tétel: különböző típusú adatokat csoportosít, ezeket egyetlen adatként kezeli, de hozzáférhetünk az elemeihez is A tétel elemei mezők. Például tétel: személy elemei: név, lakcím, születési
Árverés kezelés ECP WEBSHOP BEÉPÜLŐ MODUL ÁRVERÉS KEZELŐ KIEGÉSZÍTÉS. v2.9.28 ECP WEBSHOP V1.8 WEBÁRUHÁZ MODULHOZ
v2.9.28 Árverés kezelés ECP WEBSHOP BEÉPÜLŐ MODUL ÁRVERÉS KEZELŐ KIEGÉSZÍTÉS ECP WEBSHOP V1.8 WEBÁRUHÁZ MODULHOZ AW STUDIO Nyíregyháza, Luther utca 5. 1/5, info@awstudio.hu Árverés létrehozása Az árverésre
Programozás II. 2. Dr. Iványi Péter
Programozás II. 2. Dr. Iványi Péter 1 C++ Bjarne Stroustrup, Bell Laboratórium Első implementáció, 1983 Kezdetben csak precompiler volt C++ konstrukciót C-re fordította A kiterjesztés alapján ismerte fel:.cpp.cc.c
C string műveletek (string.h alkalmazása)
C string műveletek (string.h alkalmazása) A 3. előadás ZH során a string.h-ban található függvények alkalmazásával kell különböző, string kezeléssel kapcsolatos feladatokat megoldani. Ehhez szükséges ezen
1. Template (sablon) 1.1. Függvénysablon Függvénysablon példányosítás Osztálysablon
1. Template (sablon) 1.1. Függvénysablon Maximum függvény megvalósítása függvénynév túlterheléssel. i n l i n e f l o a t Max ( f l o a t a, f l o a t b ) { return a>b? a : b ; i n l i n e double Max (
Nagyméretű dokumentumok hivatkozásai
Nagyméretű dokumentumok hivatkozásai Tartalomjegyzék: Címsorok olyan jegyzéke, melyben a címsorok dokumentumbeli elhelyezkedésük sorrendjében szerepelnek a dokumentumbeli oldalszámukkal együtt, vagy nélkülük.
Időzített rendszerek és az UPPAAL
Időzített rendszerek és az UPPAAL Dr. Németh L. Zoltán (zlnemeth@inf.u-szeged.hu) SZTE, Informatikai Tanszékcsoport 2008/2009 I. félév 2008.11.14 MODELL 10 1 Időzített rendszerek Real Time Systems = valós
Adatbázis használata PHP-ből
Adatbázis használata PHP-ből Adatbázis használata PHP-ből...1 Nyílt forráskódú adatbázisok...1 A mysql függvények...2 A mysqli függvények...4 Bináris adatok adatbázisban való tárolása...8 Adatbázis csatoló
typedef : típusnév definiálása
typedef : típusnév definiálása typedef áll elöl, utána definíció, melyben az a név, amely a változó, vagy függvény neve helyén áll, a típus neve lesz. Pl.: typedef int *ip_t; :ip_t típusnév lett, nem változó