Šioje pamokoje apžvelgsime, kaip reikėtų atvaizduoti kintamųjų reikšmes. Supažindinsime su skaičių sumos atvaizdavimu įvairiais būdais.
NSLog pagalba gali būti atvaizduojamos ne vien tik paprastos žodžių frazės, bet ir kintamųjų bei skaičiavimų rezultatai. Tarkime norime sudėti skaičius 50 ir 25.
NSLog pagalba gali būti atvaizduojamos ne vien tik paprastos žodžių frazės, bet ir kintamųjų bei skaičiavimų rezultatai. Tarkime norime sudėti skaičius 50 ir 25.
Objective-C programos kodas atliekantis šiuos veiksmus atrodys taip:
#import <Foundation/Foundation.h>
int main (int argc, const char *argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int sum;
sum = 50 + 25;
NSLog (@"Suma skaiciu 50 ir 25 yra %i", sum);
[pool drain];
return 0;
}
int main (int argc, const char *argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int sum;
sum = 50 + 25;
NSLog (@"Suma skaiciu 50 ir 25 yra %i", sum);
[pool drain];
return 0;
}
Įvygdę programą gausime tokį rezultatą:
Suma skaiciu 50 ir 25 yra 75
Dabar šiek tiek apžvelkime patį programos kodą. Pagrindinės programos dalyje (main) po autorelease pool yra apibrežiamas kintamasis sum bei jo tipas integer. Prieš panaudojant kintamuosius programoje būtina juos apibrėžti. Kintamojo apibrėžimas nurodo Objective-C kompiliatoriui, kaip programa jį turi panaudoti. Kintamasis int tipo gali būti panaudojamas tik sveikiesiems skaičiams. Tarkim skaičiai 3, 5, -20, 0 ir t.t. Realiesiems skaičiams, tarkim 2.14, 2.455 ir t.t. yra naudojamas float tipo kintamasis.
Sveikojo tipo kintamasis sum saugo dviejų skaičių 50 ir 25 sumos rezultatą:
sum = 50 + 25;
Ši programos dalis yra skaitoma, kaip ir daugumoje programavimo kalbų. Skaičius 50 pridedamas (apibrėžta pliuso ženklu) prie skaičiaus 25 ir rezultatas yra saugomas (apibrėžta lygybės ženklu) kintamajame sum.
NSLog eilutėje yra du apskliausti argumentai. Šie argumentai yra atskiriami kableliu. Pirmasis NSLog argumentas bus atvaizduojamas ekrane (esantis tarp kabučių). Antrasis argumentas atvaizduos gautąjį rezultatą. Mūsų atveju bus atvaizduojama dviejų skaičių suma. Tarkime atvaizduojant pirmąjį NSLog argumentą ekrane pamatytume tokią eilutę:
Suma skaiciu 50 ir 25 yra
Procento simbolis esantis pirmojo argumento viduje yra specialus NSLog funkcijos simbolis. Simbolis einantis po procento ženklo nurodo kokios rūšies vertė turi būti atvaizduojama. Mūsų programos atveju NSLog eilutėje po procento ženklu yra nurodyta raidė i, kuri parodo, kad vertė bus atvaizduojama integer tipo.
Kai NSLog suranda simbolį %i, tada automatiškai atvaizduojama sekančio argumento vertė. Taigi sekantis argumentas yra sum, tai NSLog automatiškai sum vertę atvaizduos po „Suma skaiciu 50 ir 25 yra“.
Dabar galime panagrinėti kitą programos pavyzdį:
#import <Foundation/Foundation.h>
int main (int argc, const char *argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int verte1, verte2, sum;
verte1 = 50;
verte2 = 25;
sum = verte1 + verte2;
NSLog (@"Suma skaiciu %i ir %i yra %i", verte1, verte2, sum);
[pool drain];
return 0;
}
int main (int argc, const char *argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int verte1, verte2, sum;
verte1 = 50;
verte2 = 25;
sum = verte1 + verte2;
NSLog (@"Suma skaiciu %i ir %i yra %i", verte1, verte2, sum);
[pool drain];
return 0;
}
Įvygdę šią programą gausime tokį rezultatą:
Suma skaiciu 50 ir 25 yra 75
Šios programos pagrindinėje main dalyje apibrėžiami trys int tipo kintamieji: verte1, verte2 ir sum. Šiuos kintamuosius galėjome apibrėžti ir naudojant tris atskirus apibrėžimus:
int verte1;
int verte2;
int sum;
int verte2;
int sum;
Apibrėžus šiuos kintamuosius programa priskiria skaičių 50 kintamajam verte1 ir skaičių 25 kintamaajam verte2. Šių dviejų kintamųjų apskaičiuojama suma ir gautąsis rezultatas yra priskiriamas kintamajam sum.
Šios programos atveju NSLog eilutėje jau yra keturi argumentai. Taigi pirmasis argumentas, paprastai dar vadinamas format string, aprašo sistemai, kaip likusieji argumentai turi būti atvaizduojami. Kintamasis verte1 turi būti atvaizduojamas iš karto po frazės „Suma skaiciu“. Kintamieji verte2 ir sum bus atvaizduojami po ateinančių dviejų įvykių apibrėžtų simboliais %i.
Taigi šioje pamokoje norėjome supažindinti, kaip Objective-C programavime reikėtų atvaizduoti kintamųjų reikšmės. Tikimės šios pamokos jums padėjo pažinti Objective-C programavimą. Ateityje pasistengsime pratęsti pamokas apie šią programavimo kalbą.
Rengiant pasiremta knyga: Stephen G. Kochan “Programming in Objective-C 2.0”
Komentarų nėra:
Rašyti komentarą