lbos pagrindai: 1. Literatinės konstantos, kintamųjų tipai (Literal constant, Variables); Kintamieji gali būti: a) lokalūs; b) globalūs; c) statiniai; d) registriniai. pvz.:Lokalus kintamasis bus matomas tarp {...} Globalūs kintamieji matomi visame programos kode. Taip yra todėl, kad aprašomi už programos rinų. pvz.: int a; main () { ... } Glogaliniai kintamieji ir kitos nuostatos sukeliamos į header failus. C kalba yra deklaratyvi. Tai reiškia, kad kintamasis turi turėti tipus. Jie gali būti int,short, long (sveiki skaičiai); float, double, long double (skaičiai su slankiuojančiu kableliu); char (pavieniai simboliai, nedideli sveikieji skaičiai).. a) int kintamasis apima visus sveikus skaičius , kuriuos sudaro 2 arba 4 baitai. Gali būti su ženklu arba be jo: pvz.: unsigned int signed int => int short int => short (priklauso nuo kompiliatoriaus) long int => long (priklauso nuo kompiliatoriaus) unsigned int => long unsigned short int int i = 10; arba int i(10) ; b) 1-o baito kintamasis yra char tipas pvz.: char i = ‘A’; Gali būti talpinami skaičiai į vieną baitą. Į vieną char‘ą gali tilpti skaičius nuo -127 iki 128. Ženklui skiriamas kairysis bitas. Gali būti dirbama su ženklu. Tam tikslui reikia naudoti unsigned ... arba signed ... Pvz.: unsigned char z; (255 sk.) Signed nebūtinas rašyti. c) flout kintamasis yra 4 baitų viengubo tikslumo realus kintamasis. (1032) d) Jei reikia daugiau tikslumo, naudojamas dvigubo tikslumo realus skaičius su kintamuoju double. Double turi 16 reikšminių skaičių. (≈10300) Dar C kalboje egzistuoja long double. Tai keturgubo tikslumo realus kintamasis. e) Bool kintamasis aprašo logines reikšmes, kurios yra .TRUE. arba .FALSE. Tai yra baziniai kintamieji. Konstantos. Jos C kalboje egzistuoja dvejopos: a) adresuojamos b) neadresuojamos pvz.: int i = 10; čia i – kintamasis, kurio adresas nėra aiškus. Tai yra neadresuojama konstanta. Dar neadresuojamos konstantos yra šios: 0123.. (turi prasidėti nuliu), X12AB1C (šešioliktainis skaičius), int i = 125u (neteisingai), o unsigned int i = 125u (teisingai), 125u(U) – tipas be ženklo, 125L(l) – long tipas Gali būti konstantos žyminčios valdančiuosius simbolius (escape-sequences): \n – išvedimas sekantis naujoje eilutėje \o – konstanta žyminti eilutės pabaigą \t – tobuliacijos konstanta (atitraukimas per kažkiek simbolių) \b – į kitą eilutę \? – klausimas \\ - backslash \a – bell („skambutis“) ir t.t. Adresuojamos konstantos pvz.: const int i = 10; const double Pi; Adresuojamos konstantos turi būti globalios. Konstantos turi adresus atmintyje. 2.Pointeriniai kintamieji, Reference, void tipas (Pointer types, Reference types, using of Void type); (POINTERIAI) Pointeris – tai objektas, kuriame saugojamas kito objekto adresas. Pointeris leidžia atlikti veiksmus su šiuo kitu objektu. Paprastai pointeriai naudojami darbe su dinamiškai sukurtais objektais, duomenų struktūromis (sąrašai, ierarchiniai medžiai); didelių objektų (masyvų ir klasių objektų) perdavimui į funkcijas kaip parametrus. pvz.: int *kintamasis; ( čia int‘as rodo kokio tipo kintamasis) Pointerinio tipo kintamasis, kuriame bus saugomas adresas. Kaip tuos adresus sudelioti? pvz.: int i = 10; int *ptri = &i (čia ampersendas reiškia adreso priėmimo operaciją iš objekto) jei rašoma i = 20; tai jau bus prėjimas per vardą. Priėjimas prie kintamojo galimas ir tiesioginis: *ptri = 20; (čia * reiškia, kad keičiam kin tamojo reikšmę per adresą). Operacijos su adresais eina aukščiau daugybos bei dalybos. Naujai deklaruotas kintamasis būtinai turi būti inicializuotas reikšme NULL. pvz.: int * ptrMy = NULL; Pointer į konstantas const double pi = 3.14; const double *ptrconst = π double *ptr double = NULL; double var = 11.1; ptr const = & var; (rodoma į kintamąjį var; & adreso priskirimo operatorius) var = 11.1; double const *ptr const = & pi; (pointer kintamasis pats yra konstanta, rodo į objektą, kuris yra double tipo; bus klaida – tipų nesutapimas) double const ptr const1 = & var; (viskas bus tvarkoje ,nes rodo ne į conts, o į double tipą) *ptr const1 = 2.5; double var1 = 10.0; *ptr const1 = & var1; (bus klaida) ,, Durų uždarymo metodas “ : const double const *ptr const2 = π (čia jau nebegalima pakeisti nei reikšmės, nei adreso) Dar vienas eilinis blogas pvz.: int k = 10; *ptr const = &k; (ptr double tipo, o k – int ir todėl įvyks klaida) Egzistuoja dar toks dalykas kaip pointeris į pointerį. pvz.: int **ptrC = NULL; (Čia ir yra pointeris į pointerį) int i = 10; int *ptr i = &i; (reikšmė į kintamojo adresus) Kam to reikia? Pointerio į pointerį pagalba galime suformuoti stulpelį iš ptr ir jam duoti ptr į tą stulpelį. (REFERENCE) Reference naudojamas alternatyviojo vardo priskirymui tam tikram objektui. Reference leidžia atlikinėti veiksmus su šiuo objektu lygiai taip pat, kaip tai yra daroma su pointeriu. Tačiau tokie veiksmai nereikalauja specialios sintaksės, kaip pointeriai. Paprastai reference naudojamas kaip formalus funkcijos parametras. pvz.: int i = 10; (& - adreso ištraukimas) int &ref i = i; (reference rodo į kintamąjį, kuris jau egzistuoja) Referensas gali būti ir į pointerį. pvz.: int *ptr i = & i; int *&ref ptr i = ptr i; (referensas į pointerį; alternatyvus ptr i vardas) Blogas pavyzdys su referensu: pvz.: double d = 3.2; int & ref d = d; (Čia jau įvyks error’as) (VOID) C++ kalboje egzistuoja kintamojo tipas, kuris rodo, kad kintamasis neturi tipo. void – kintamasis, kuris negali būti naudojamas kokiai nors inicializacijai (pvz.: void i = 10; //error). void – tai servisinis užrašas, naudojamas laikinam kintamajam apibrėžti. pvz1.: main () { ..... return 0; } (čia pagal nutylėjimą funkcija gražina sveiko tipo kintamąjį) pvz2.: void main () { ..... } (čia jau funkcija nieko negražina) Štai pavyzdys, kada neggalima rašyti, nes įvyksta klaida: pvz.: *ptr void = 10; (įvyksta klaida, nes negalima prieiti prie objekto per pointerį void) 3. Masyvai (Array types); Masyvas yra vienatipių elemetų rinkinys. Priėjimas prie elementų atliekamas per indeksą – elemento eilės numerį masyvę. Aprašomas taip: duomenų_tipas masyvo_vardas[masyvo dydis]; pvz.: double elem[i]; (masyvo elementai) const i = 150; (numeruojami nuo 0 iki 149) Masyvai išdėstomi eilutėmis. Inicializuojami 2 būdais: 1) elem[1] = 10; (adresuojami nuo nulio, pirmas masyvo elementas yra elem[0]) elem[5] = 20.3; 2) int i[1] = {5,14}; (taip rašoma tik deklaravimo metu) int i[] = {5,14}; (ši sintaksė galima tik deklaruojant masyvą, kompiliatorius skaičiuoja kiek elementų; ši deklaracija yra paprastesnė) Dvimačio masyvo deklaracija ir inicializacija: pvz.: int ia[4][3] = {0,1,2,3,4,5,6,7,8,9,10,11}; int ia[4] [3] = { {0}, {3}, {6}, {9} }; - inicializuojami tik pirmi kiekvienos eilutės elementai int ia[4] [3] = { 0,3,6,9 } – visi trys pirmos eilutės elementai ir pirmas antros eilutės elementai gaus atitinkamas reikšmes, kiti bus inicializuojami nuliais. Jei masyvas lokalus, tai tuščiose vietose bus šiukšlės. Jei globalus – 0. Egzistuoja dar char tipo masyvas. pvz.: char c[3] = {‘A’,’B’,’C’}; char c[3] = “ABC”; (Čia “ABC“ yra vadinama simboline eilute; ji visada baigiasi ‘\0‘ nematoma pabaiga; šiuo atveju turėsime klaidą, nes elementų kiekis nesutaps – juk turime 3+1 elementų skaičių) Taip pat galimi pointeriai masyvuose: pvz.: int *i[10]; (10 pointerių į int kintamuosius masyvą) Dinaminiai masyvai kaip dinaminiai kintamieji aprašomi ‘New’ komandos pagalba. pvz.: int*ptr i = new int; (pasidarome naują int tipo kintamąjį) Su dinaminiais kintamaisiais turime tik ptr. Dinaminio masyvo išskirimas: pvz.: int *ptr scope = new int [20]; (čia turime 20 elementų int tipo ir atidavėm ptr į masyvo pradžią) Naujas sukurtas dinaminis masyvas panaikinamas štai taip: delete ptr i; Jei parašysime delete [] ptr scope, tai bus sunaikinamas ptr į masyvo pradžią. Kaip dirbti su masyvo elementais per ptr: pvz.: int i[4]; int *ptr = &i; (čia pasiimam ptr į pradžią) int *ptr = &i[0]; (čia pasiimam ptr į pradžią) int *ptr = &i[2]; (ptr į 2 elementą) Galima taip rašyti: pvz.: *(ptr +(1)) = 10; int j = *(ptr i + (2)); (j – ui priskirtas 3 – ias elementas; tarp skliaustų esantys skaičiai sako, kad permetinėjame ptr per masyvo elementą(objektą)) Objektui galima suteikti reikšmę per adresą: pvz.: int j = *ptr i + 2; (bus klaida, nes nėra skliaustukų ant dvejeto) 4. Enumeratoriai (Enumeration types); Dažnai tenka nustatinėti kintamąjį, kuris perima reikšmes iš tam tikro rinkinio. Enumai yra dar kitaip vadinamas vardinis. Teorinu požiūriu, tai yra pats papraščiausias duomenų tipas, kurį galima panaudoti visų kitų duomenų tipų konstravimui. C++ kalboje vardinis tipas yra skirtas sveikojo tipo vardinių konstantų grupių apibrėžimui. Jo aprašymo sintaksė: Enum
Šį darbą sudaro 7094 žodžiai, tikrai rasi tai, ko ieškai!
★ Klientai rekomenduoja
Šį rašto darbą rekomenduoja mūsų klientai. Ką tai reiškia?
Mūsų svetainėje pateikiama dešimtys tūkstančių skirtingų rašto darbų, kuriuos įkėlė daugybė moksleivių ir studentų su skirtingais gabumais. Būtent šis rašto darbas yra patikrintas specialistų ir rekomenduojamas kitų klientų, kurie po atsisiuntimo įvertino šį mokslo darbą teigiamai. Todėl galite būti tikri, kad šis pasirinkimas geriausias!
Norint atsisiųsti šį darbą spausk ☞ Peržiūrėti darbą mygtuką!
Mūsų mokslo darbų bazėje yra daugybė įvairių mokslo darbų, todėl tikrai atrasi sau tinkamą!
Panašūs darbai
Atsisiuntei rašto darbą ir neradai jame reikalingos informacijos? Pakeisime jį kitu nemokamai.
Pirkdamas daugiau nei vieną darbą, nuo sekančių darbų gausi 25% nuolaidą.
Išsirink norimus rašto darbus ir gauk juos akimirksniu po sėkmingo apmokėjimo!