<< Části programu | NXC základy | Řídící struktury >>
Proměnné
Deklarace proměnných
- proměnné jsou deklarovány typem proměnné (klíčové slovo) a názvem (identifikátorem) proměnné,
- při deklaraci je možné provést inicializaci proměnné přiřazením hodnoty
- Příklady deklarace proměnné
int x; // deklarace x
bool y,z; // deklarace y a z
long a=1,b; // deklarace a a b, inicializace a s hodnotou 1
float f=1.15, g; // deklarace f a g, inicializace f
string zprava = "Stiskni tlačítko!";
Lokální a globální proměnné
int x; // x - globální proměnná
task main()
{
int y; // y - lokální proměnná pro main
x = y; // ok
{ // začátek příkazové struktury
int z; // z - lokální deklarace ve struktuře
y = z; // ok
}
y = z; // chyba - z je mimo strukturu
}
task foo()
{
x = 1; // ok
y = 2; // chyba - y není globální proměnná
}
Typy dat
Jednoduché datové typy
Typ | Popis | Rozsah | Paměť |
bool | logický typ | true / false | 8 bitů |
byte | celé číslo | 0 až 255 | 8 bitů |
char | znak | znaky ASCII | 8 bitů |
int | celé číslo | -32 768 až +32 768 | 16 bitů |
unsigned int | kladné celé číslo | 0 - 65 535 | 16 bitů |
long | rozšířené celé čislo | -2 147 483 648 až 2 147 483 648 | 32 bitů |
float | desetinné číslo | přesnost přibližně 7 des. míst | 32 bitů |
Strukturované datové typy
Typ | Popis | Rozsah |
string | řetězec | skupina znaků ASCII |
array | pole proměnných | skupina dat stejného typu |
struct | uživatelská struktura | skupina dat různých typů |
Speciální datové typy
Typ | Popis | Rozsah |
mutex | speciální proměnná | řídí přístup k prostředkům použitým ve více ulohách |
Pole proměnných
- stejná deklarace jako u běžné proměnné
- za názvem proměnné se připojuje dvojice hranatých závorek.
- připojením druhé dvojice hranatých závorek bude vytvořeno dvojrozměrné pole
- NXC podporuje max. čtyřrozměrné pole
- prvky pole jsou číslovány od nuly.
int pole[]; //vytvoří pole s nula prvky typu int
int pole2[] []; //vytvoří pole dvou dimenzí s nula prvky typu int
int pole3[5]; //vytvoří pole s pěti prvky, výchozí hodnotou jsou nuly
int pole4[]={1, 7, 3, 1, 4, 1}; //vytvoří pole výčtem hodnot
pole[0]=12; //přiřadí na nultou pozici hodnotu
pole[1]=2; //přiřadí na pozici s číslem 1 hodnotu
Struktury proměnných - struct
- užívatelem definované složené typy
- využití pro sdružení souvisejících dat ve složitějších programech
- obdoba typu record v Pascalu nebo struct v jazyce C
Definice typu struct
struct auta
{
string typ_vozu;
int rok_vyroby;
};
struct lide
{
string jmeno;
int vek;
auta auto ;
};
lide prvniOsoba; //Definice proměnné
- prvky strukturovaného typu jsou přístupné pomocí tečkové notace
prvniOsoba.vek = 40;
auto.typ_vozu = "honda";
auto.rok_vyroby = 1996;
Mutex