Minden, ami elektronika

Elektronikával hobbi szinten foglalkozó oldal

array

2019. augusztus 26. 02:34 - raptor13

Leírás

Egy tömb olyan változók gyűjteménye, amelyekhez indexszámmal lehet hozzáférni. Az Arduino IDE alatt lehetőségünk van a tömböket C++ nyelven deklarálni, ami nem túl egyszerű, de szerencsére az alap tömbök megadása az Arduino IDE alatt nem bonyolult.

Tömb deklarálása (létrehozása)

Az alábbi példák mutatják be, hogy milyen módszerek vannak egy tömb létrehozására (deklarálására):

A tömbök deklarálásakor megadhatja, hogy hány elemből álljon a tömb (a fenti példában a myInts egy 6 elemű tömb lesz), azonban nem szükséges megadnia a tömb elemeinek a számát, ha felsorolja a tömb elemeit (myPins), ebben az esetben a fordító automatikusan akkora tömböt hoz létre, ahány elemet felsoroltunk. Definiálhat tömböt az előző kettő módszer keverékével is (mySensVals). Vegye figyelembe, hogy egy char típusú tömb deklarálásánál az inicializáláshoz még egy elemre van szükség a szükséges null karakter megtartásához.

Egy tömb elérése

Minden tömbre igaz, hogy az elemeinek a számozása nullával indul és az utolsó elem száma a (tömb mérete)-1.

Ez azt is jelenti, hogy egy tíz elemmel rendelkező tömbben a kilencedik index az utolsó elem. Ennélfogva:

Ezért legyen óvatos a tömbök kezelésekor. Ha a legutolsó indexnél nagyobb számot ad meg, akkor a következő memóriaterület(ek)et fogja elérni. Ez egy érték kiolvasásakor még nem okoz általában nagy problémát, íráskor akár a program lefagyását is eredményezheti. Az ezekről a helyekről való olvasás valószínűleg nem sokat fog tenni, kivéve az érvénytelen adatokat. Az olyan hibákat, amely ebből következik általában nagyon nehéz megtalálni.

A BASIC-tól vagy a JAVA-tól eltérően a C ++ fordító nem ellenőrzi, hogy a tömb hozzáférése a deklarált tömb méretének törvényes határain belül van-e.

Érték hozzárendelése egy tömbhöz:

Érték lekérése tömbből:

Tömbök és a FOR ciklus

A tömbök kezeléséhez gyakran használnak FOR ciklust, ahol a ciklus számlálóját egyben a tömb indexének a megadására is fel lehet használni. Az alábbi példában egy tömb elemei kerülnek kiíratásra a sorors porton keresztül:

Példakód

A tömbök használatát demonstráló teljes programhoz nézze meg a Knight Rider példát az oktatóprogramok között.

Lásd még

String()

bool

boolean

byte

char

dupla

float

int

long

short

size_t

string

unsigned char

insigned int

unsigned long

void

word

PROGMEM

Szólj hozzá!

A bejegyzés trackback címe:

https://electro.blog.hu/api/trackback/id/tr5415024300

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása