1 / 10

Tömbök

Tömbök. Csernoch Mária. Egydimenziós tömbök. egydimenziós tömbök (vektorok) deklarálása típus név[méret] méret konstans a tömbben tárolható elemek számát definiálja példák egydimenziós tömbök deklarálására int a[5]; float b[20]; tömb méretének megadása makróval: char c[N];

Télécharger la présentation

Tömbök

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tömbök Csernoch Mária

  2. Egydimenziós tömbök • egydimenziós tömbök (vektorok) deklarálása • típus név[méret] • méret • konstans • a tömbben tárolható elemek számát definiálja • példák egydimenziós tömbök deklarálására • int a[5]; • float b[20]; • tömb méretének megadása makróval: char c[N]; • #define N 100; • char c[N];

  3. Tömbök • a tömb elemei azonos típusúak • tömb elemeinek indexelése • 0-tól (méret − 1)-ig • hivatkozás tömb elemre • pl.: a[0], b[5]

  4. Egydimenziós tömbök inicializálása • int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; • char szo[15] = {‘a’, ‘l’, ‘m’, ‘a’}; • tárolási osztálytól függően 0 v. határozatlan • float valosak[ ] = {23.5, 49.2, 3.45}; • a tömb automatikusan 3 eleműre definiálódik • int a[5] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; • helytelen, túl sok a kezdőérték • C semmilyen ellenőrzést nem végez a tömb indexeire vonatkozóan • indexhatár átlépése veszélyes

  5. Tömbök és pointerek • egy tömb neve nulladik elemének címe (pointer konstans, amely a tömb 0-dik elemére mutat) int a[5]; int *p; p = &a[0]; // a mutatót a tömb első elemére irányítjuk p = a; vagy int a[5], *p = a;

  6. Tömbök és pointerek • A tömb 0-dik elemének a címe • a  &a[0] • A tömb i-edik elemének címe • a + i  &a[ i ] • &p[ i ] • a + i • p + i • Különbség ‘p’ és ‘a’ között, hogy ‘a’ konstans, ‘p’ változó • p = a; // helyes • p++; // helyes • a = p; // hibás • a++; // hibás

  7. A tömb 0-dik eleme a[0] p[0] *(a + 0) *(p + 0) *a *p A tömb i-edik eleme a[ i ] p[ i ] *(a + i) *(p + i) Tömbök és pointerek

  8. Többdimenziós tömbök • Általános alak • típus név [méret1] [méret2] … [méretn]; • Kétdimenziós tömbök (mátrixok) • típus név [méret1] [méret2] • méret1: • tömb sorainak száma • méret2 • tömb oszlopainak száma

  9. Kétdimenziós tömbök inicializálása int matrix [3] [5] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}; int matrix [3] [5] = {{1, 2, 3, 4, 5} {6, 7, 8, 9, 10}, {11, 12, 13, 14, 15}};

  10. Kétdimenziós tömbök elemeinek elérése • matrix [2] [3]

More Related