2012.11.08.
09:52

Írta: harsanyireka

Hivatkozások 10.: Változók, Adat típusok

void

A függvények deklarálásához használt kulcsszó. Saját függvényt írhatunk vele, amit csak meghívunk egy másik helyen a kódban.

http://arduino.cc/en/Reference/Void

 

boolean

Két értéke lehet: igaz vagy hamis. Minden boolean változó egy byte-ot foglal el a memóriában.

http://arduino.cc/en/Reference/BooleanVariables

 

char

Ez az adat típus egy byte memóriát foglal el, karakter érték tárolására alkalmas, tehát 1 karakter értékét tárolja. A betűket szimmpla idézőjelbe, a karakter stringeket dupla idézőjelbe írjuk: 'A' "ABC" Típusátalakításhoz használatos kulcsszó. Előjeles adat típus, ez azt jelenti hogy -128 és 127 közötti étékeket tárolhat.

A karaktereket számként tároljuk, a betűk decimális értéke visszakereshető az ASCII karakter szabványban: http://arduino.cc/en/Reference/ASCIIchart De pl. Serial.println parancs segítségével kiirattathatjuk a többi számrendsezrben is serail monitor segítségével, így megnézhetjük azok értékeit is.

char myChar = 'A';
char myChar = 65; //a két sor ugyanaz jelenti

http://arduino.cc/en/Reference/Char 

  

unsigned char

Ugyanaz mint a byte. 0 és 255 közötti számokat lehet belekódolni. A következetesség kedvéért használd a byte-ot.

unsigned char myChar = 240;

http://arduino.cc/en/Reference/UnsignedChar

  

byte

8 biten (= 1 byte) tárol nem előjeles számokat, 0 és 255 között. 

byte b = B10010;  // "B" bináris formázó (B10010 = 18 tizes számrendszerben) 

http://arduino.cc/en/Reference/Byte

  

int

Elsődleges adat típus számok tárolásához. Az Arduino Uno-n az integer 16 bit értéket tárol, -32 768 és 32 767 között. Az Arduino Due 32 biten működik, így 2 147 483 648 és 2 147 483 647 közötti értéket tárol. Aritmetikai operátorokkal a hagyományos módon működnek. Bitenkénti operátorokat is használhatunk velük, csak ilyenkor figyelni kell mert azok kettes számredszerben tolják alrétt a bitértékeket.

szintaxis:

int var = val; // integer változóneve = értékmegadás

példa:

int a = 5;        // binary: 0000000000000101
int b = a << 14; // binary: 0100000000000000

http://arduino.cc/en/Reference/Int 

 

unsigned int

Előjel nélküli egész számok tárolására alkalmas. Mivel ugyanúgy 2 byte-on működik mint az integer, nagyobb pozitív értéket tud tárolni: 0 és 65 535 között az ATMega alapú arduinoknál. Due típuson 4 byte-tel működik így 0 és 4 294 967 295 között használható.

szintaxis:

unsigned int var = val; // előjeles integer változóneve = értékmegadás

 Ha a változó eléri az egyik szélső értéket, akkor átugrik a másik végére és ott folytatódik a számítás, tehát:

unsigned int x
   x = 0;
   x = x - 1;       // x most65535 - negatív irányba ugrott érték
   x = x + 1;       // x most 0 - pozitív irányba ugrott érték

http://arduino.cc/en/Reference/UnsignedInt

  

word

Ugyan az mint az unsigned int, tehát 16 biten tárol előjel nélkül számokat, 0-tól 65 535-ig.

példa:

 word w = 10000; 

http://arduino.cc/en/Reference/Word 

 

long

32 biten tárol számértéket -2 147 483 648 és 2 147 483 647 között.

példa: 

long speedOfLight = 186000L;   // 'L' kifejezést az Integer Állandók-nál nézd meg

szintaxis: 

long var = val;

http://arduino.cc/en/Reference/Long 

 

unsigned long

Ugyanúgy 32 biten tárol számértéket mint a long, de nincs előjele, így 0-tól 4 294 967 295 (2^32 - 1) -ig terjedhet az értéke.

szintaxis:

unsigned long var = val;

http://arduino.cc/en/Reference/UnsignedLong

  

short

16 bites adat típus, ATMega és ARM alapú Arduinokhoz. Tárolt érték -32 768 és 32 767 között.

szintaxis:

short var = val;

http://arduino.cc/en/Reference/Short

  

float

Tizedes ponttal rendelkező számok. Lebegőpontos érték tárolására alkalmasak, 32 biten. (lásd. Állandók) Maximális értéke 3.4028235E+38 és minimális értéke -3.4028235E+38.

A float kifejezésben csak 6-7 tizedes számjegy van. Ez az összes számjegyre értendő, nem a tizedespont jobb oldalára.

A lebegőpontos számok nem precízek, furcsa eredményt adhatnak összehasonlításnál. Pl. 6.0 / 3.0 nem egyenlő 2.0-val, mert a számok abszolút értékének különbsége kevesebb lehet néhány kicsi számnál.

szintaxis: 

float var = val;

http://arduino.cc/en/Reference/Float

 

double

Lebegőpontos számérték. Uno-n és ATMega alpú boardokon 4 byte-os, Due-n 8byte-os.

http://arduino.cc/en/Reference/Double

 

string - char array

Kétféleképpen ábrázolható, egyrészt használhatjuk mint a 0019 verzióba beépített String adat típust, másrészt létrehozhatunk stringet egy karakterlánc tömbbel. inf.: http://hu.wikipedia.org/wiki/String

Ezeket a következő példák szerint lehet deklarálni, mindegyik érvényes:

  char Str1[15];
  char Str2[8] = {'a', 'r', 'd', 'u', 'i', 'n', 'o'};
  char Str3[8] = {'a', 'r', 'd', 'u', 'i', 'n', 'o', '\0'};
  char Str4[ ] = "arduino";
  char Str5[8] = "arduino";
  char Str6[15] = "arduino";

http://arduino.cc/en/Reference/String

 A karaktertömbök utolsó eleme a 0 (nulla), innen ismeri meg a fordítóprogram a sting végét.

  

String - object

Szöveg alapú stringeket manipulálhatunk a következő függvények által:

http://arduino.cc/en/Reference/StringObject

 

array

Tömb. Adathalmazt tárolhatunk memóriában és műveleteket végezhetünk el rajtuk. A tömbök elemeire mindig az indexelés operátorával ([]) hivatkozunk (pl. x[3]).

szintaxisa:

típus tömbnév[elemszam];

Tömb deklarálása a következő módokon történhet:

  int myInts[6];
  int myPins[] = {2, 4, 8, 3, 6};
  int mySensVals[6] = {2, 4, -8, 3, 2};
  char message[6] = "hello";

 Érték hozzárendelése a tömb egy eleméhez:

mySensVals[0] = 10;

Érték kiolvasása a tömb egy eleméből:

x = mySensVals[4];

http://arduino.cc/en/Reference/Array 

cc-by-sa3s.jpg

Szólj hozzá!

Címkék: hivatkozások

A bejegyzés trackback címe:

https://harsanyireka.blog.hu/api/trackback/id/tr984705812

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