Regisztráció Blogot indítok
Adatok
christo161

37 bejegyzést írt és 24 hozzászólása volt az általa látogatott blogokban.

Admin Szerkesztő Tag Vendég
Az előző tananyagrészben csak a legalapvetőbb műveletekről volt szó (kezdőértékadás, értékadás, parancssorból történő bekérés, parancssorba való kiíratás). Ebben a tananyagrészben néhány, az eddigi ismeretekhez kapcsolódó gyakori műveletet nézünk át...
Ebben a tananyagban túlnyomórészt nem használunk C nyelvből örökölt függvényeket változók értékeinek a kiíratásához, de mivel mások kódjában találkozhatunk velük, így talán érdemes lehet tudni a létezésükről...
Ebben a tananyagrészben az első példaprogramjainkban leggyakrabban használt alaptípusú változók jellemzőiről lesz szó. Előző tananyagrész: változók, konstansok, literálokKövetkező tananyagrész: whitespace, layout..
Ebben a tananyagrészben a forráskód áttekinthetőségéről és tagolásáról lesz szó...
A forráskód szövegében bárhol elhelyezhetünk olyan sorokat, vagy szövegrészeket, amiknek nem lesz hatása a program működésére, vagy másképp fogalmazva a fordító nem kísérli meg futtathatóvá alakítani őket, csak a forrásfájlokban léteznek. Ezeket a programozók feljegyzései a forráskódban, ezeket…..
  Képzelj el egy gőzmozdonyt! Megvan? Akkor most képzeld el akkorában, mint egy ház! Ez már nem olyan egyértelmű, de legjobban így tudom leírni egy hőerőmű gigászi kazánjainak méretét. Nyugalom, ahogy a korábbi cikkeknél, úgy most sem kell kizárólag a képzeletetekre hagyatkozni, mivel pontosan egy…..
Ezen a ponton feltételezzük, hogy ott tartunk, hogy módosítottunk valamit a LibreOffice forrásfájljaiban, ami egy hibát javít, vagy esetleg valamilyen új funkciót valósít meg, és ezt a módosítást be szeretnénk küldeni, hogy a senior fejlesztők ellenőrízzék és mergeljék (beolvasszák) a LibreOffice…..
Jó eséllyel mindenki hallott már a gitről, aki idetéved. Mivel nagyon jó tananyagok vannak róla ([1], [2], [3]), így ebben a leírásban csak a LibreOffice fejlesztésével kapcsolatos gyakorlatról ejtenék szót. A commitolásról és a pusholásról egy másik leírásban lesz szó, de ahhoz kapcsolódó műveletek…..
Ebben a részben arról lesz szó, hogy ha már van egy vagy több forrásfájlunk, akkor abból hogyan tudunk parancssort használva futtatható programot létrehozni...
A Visual Studio egy C++ programozáshoz használható integrált fejlesztői környezet. Ránézésre olyasmi, mint egy szövegszerkesztő, de programozást segítő kényelmi funkciókkal van ellátva...
A Qt Creator egy C++ programozáshoz használható integrált fejlesztői környezet. Ránézésre olyasmi, mint egy szövegszerkesztő, de programozást segítő kényelmi funkciókkal van ellátva...
A CodeBlocks egy C++ programozáshoz használható integrált fejlesztői környezet. Ránézésre olyasmi, mint egy szövegszerkesztő, de programozást segítő kényelmi funkciókkal van ellátva. Nem annyira profi, mint a Visual Studio vagy a Qt Creator, de a kisebb példaprogramok kipróbálásához teljesen…..
seti Számoljunk a számolással? 2018.03.03 08:47:36
Ha elfogadjuk is, hogy nagyon sokféle matematika lehetséges, vajon azt is el kellene-e fogadnunk, hogy nincsen valamiféle univerzális (közös) alapja vagy kiindulási pontja mindegyiküknek? A kérdés azért érdekes, mert felvetődhet – mint ahogy többször fel is vetődött –, hogy valamiféle „matematikai…..
seti Az élet értelme és a SETI 2018.04.28 17:14:02
De nem úgy, mint ahogy gondolnánk. Ugyanis amikor arról beszélünk, hogy mennyire könnyen (vagy éppen nehezen) alakulhat ki az élet, illetve az értelmes élet, akkor eszünkbe kell, hogy jusson: ez talán nem független az időponttól. Meg az is, hogy ez így talán egyszerűen félrevezető…..
Ebben a leírásban arról lesz szó, hogy hogyan keressük meg a LibreOffice forráskódjának azt a részét, amiben módosításokat szeretnénk végezni annak érdekében, hogy egy adott hibát kijavíthassunk. Ez persze csak eszközök bemutatását jelenti, nem pedig recepteket, amikkel konkrét hibákat lehet…..
christo161 2019.01.08 11:37:08
@Lehet Szoryi: Ez igazából csak egy saját magamnak írt txt fájl kicsinosítása. Nyilván nem fognak emiatt tömegek LibreOffice-t fejleszteni, de gondoltam hátha esetleg valakinek segít majd.
Ez a leírás tartalmazza azokat a lépéseket, amik ahhoz szükségesek, hogy Windowson letöltsd és fordítsd a LibreOffice forráskódját. A letöltött forráskódot természetesen módosíthatod, és ha lefordítod, a fordítás után ki is próbálhatod, hogy jól működik-e a benne végzett módosításod...
Ez a leírás tartalmazza azokat a lépéseket, amik ahhoz szükségesek, hogy Linuxon letöltsd és fordítsd a LibreOffice forráskódját. A letöltött forráskódot természetesen módosíthatod, és ha lefordítod, a fordítás után ki is próbálhatod, hogy jól működik-e a benne végzett módosításod. Ebben a…..
Ebben a leírásban található lépéseket kell végrehajtani ahhoz, hogy a LibreOffice kódjában végzett módosításodat beküldhesd, hogy az automatikus ellenőrzés megtörténjen, és ha azok sikeresek, akkor a senior programozók rábólinthassanak, és csak azt követően kerülhet bele a LibreOffice kódjába…..
A következő linken található leírásban olvasható lépéseket kell elvégezned ahhoz, hogy a LibreOffice forráskódját letöltsd a számítógépedre, és a benne végzett módosításokat beküldhesd ellenőrzésre, sikeres ellenőrzés esetén pedig a módosításod bekerülhet a LibreOfficeba, melyet a következő…..
LibreOffice fejlesztés Előszó 2018.12.04 11:53:42
Ez a blog azoknak kíván segítséget nyújtani, akik részt szeretnének venni a LibreOffice fejlesztésében. A fejlesztés alatt főként programozás értendő, azaz a LibreOffice forráskódjának a nézegetése és módosítása, bár vannak egyéb kapcsolódó feladatok is, mint például a dokumentumok belső…..
Hihetetlenül hangzik? Elsőre nekem is - röhögtem és legyintettem: ez lehetetlen! De aztán elkezdtem kutatni (=YouTube-videókat nézni, hogy hogyan legyek gazdag); elolvastam Kiyosaki pár művét, majd Tim Ferrisstől a 4 órás munkahét - Szabadulj meg a 9-5-ig robottól és élj ott, ahová a szíved húz!…..
Ebben a tananyagrészben arról lesz szó, hogy hogyan tudunk a legegyszerűbben adatokat tárolni egy programon belül, hogyan lehet a parancssoros programokban a felhasználótól adatokat bekérni, és hogy hogyan lehet ezeket az adatokat a parancssorba kiíratni. Ehhez a tananyagrészhez szorosan kapcsolódik…..
christo161 2018.01.16 21:12:35
Hogyan számoljuk ki egy típus bájtban megadott méretéből a típus tartományának szélső értékeit? (kiegészítő információ)

Az én laptopomon például az int típus 4 bájtos. 1 biten 2 érték tárolható: 0 vagy 1. 1 bájt 8 bit. Így tehát 1 bájton 28 érték tárolható, ami 256, de mivel a 0-t is beleszámoljuk így az értékek 0-tól 255-ig terjednek.
4 bájt esetén nem a 256-ot szorozzuk meg néggyel, hanem a 28 kitevőjét, ami így 232 lesz. 232 = 4294967296. Viszont mivel az int típusban negatív számok is találhatók, ezért a (4 bájtos) int tartománya a -2147483648-tól 2147483647-ig terjedő számok. Mivel a 0 is szerepel az értékek között, így (megegyezés szerint) egyel kevesebb pozitív szám szerepel az int típus tartományában, mint negatív.
Létezik előjel nélküli int is (unsigned int), amit akkor használhatunk, ha tudjuk, hogy egy int típusú változóban úgyis csak nem negatív számokat (0-t, vagy pozitív számokat) fogunk tárolni. Ennek a tartománya 0 és 4294967295 között van.

Felmerülhet a kérdés, hogy miért kell pl. 4 bájtot lefoglalni a számítógép memóriájában, ha abban csak egyetlen számot szeretnénk tárolni. Nos, erre a válasz az, hogy pl. unsigned int (és hasonló típusok) esetén a legnagyobb megadható érték szabja meg a lefoglalt bájtmennyiséget (hiszen nem lehet pl. 4294967295 egy short int értéke, mert egy short int típusú változó legnagyobb megadható értéke 32767), signed int (és hasonló típusok) esetén pedig értelemszerűen a tartomány megfeleződik, mivel negatív és pozitív számokat is tartalmaz (illetve a 0-át).
christo161 2018.02.26 01:09:41
Számrendszerek

Prefixek segítségével megadhatunk egy egész számot 8-as (oktális), vagy 16-os (hexadecimális) számrendszer szerinti alakban. A gyakorlati életben ugyebár 10-es (decimális) számrendszer szerinti alakban írjuk a számokat, így tehát a 10-es számrendszerbeli számokat nem kell prefixszel jelölni.

(Egy számrendszer azt határozza meg, hogy hányféle számjegyet használhatunk a számok leírásához. 8-as számrendszer esetén például 8 féle számjegyet használhatunk: 0, 1, 2, 3, 4, 5, 6, 7. Így tehát 8-as számrendszerben 7 + 1 = 10. Persze a 8-as számrendszerbeli 10 nem egy ember kézujjainak számával egyenlő, hanem annál 2-vel kevesebb (azaz decimális 8), csak 8-as számrendszerben ebben az alakban írjuk: 10.

A 16-os számrendszerben többféle számjegyet használhatunk, mint a 10-es számrendszerben: 0, 1 .. 9, a, b, c, d, e, f. Így tehát 16-os számrendszerben 9 + 1 = a, 9 + 2 = b, ..., f + 1 = 10, és a 16-os számrendszerbeli 10 egyenlő a 10-es számrendszerbeli 16-tal.
Ha 16-os számrendszerben például azt írjuk, hogy 23e, akkor az alatt 2 * 256 + 3 * 16 + 1 * 14 = 574-et értünk. Ugyebár 256 = 162, mint ahogy 100 = 102.)

C++-ban a 8-as számrendszerbeli alakot úgy jelölhetjük, ha az adott szám elejére egy 0-t írunk, a 16-os számrendszerbeli alakot pedig hasonlóan, ha a szám elejére 0x-et írunk.
A cout alapból 10-es számrendszerbeli alakban írja ki az egész számokat. Ha a kiírandó elemek közé oct-ot írunk, akkor azt azt követő számok 8-as számrendszerbeli alakban lesznek kiírva, hasonlóképp a 10-es számrendszerbeli alakhoz dec-t kell írni, a 16-oshoz pedig hex-et.

int nyolcas = 07;
int nyolcas_2 = 07 + 1;
cout << nyolcas << ", " << nyolcas_2 << endl << "Oktalis alak: " << oct << nyolcas << ", " << nyolcas_2 << endl;

(Mivel nyolcas számrendszerben nem használunk 9-es karaktert, ezért fordítási hibát okoz, ha 0-val kezdődő számokban szerepel a 9-es karakter, pl. nyolcas_2 = 0789;).

int tizenhatos = 0x9 + 1;
int tizenhatos_2 = 0xf + 1;
cout << "Hexadecimalis alak: " << hex << tizenhatos << ", " << tizenhatos_2 << endl << "Decimalis alak: " << dec << tizenhatos << ", " << tizenhatos_2 << endl;

A nagy tizedestörteket felírhatjuk normál alakban is. (Normál alak: a tizedesvesszőt eltoljuk úgy, hogy az adott szám helyett egy 1 és 10 (negatív szám esetén -1 és -10) közötti számot kapjunk, majd az így kapott számot megszorozzuk 10-nek annyi hatványával, ami a tizedesvesszőt visszatolja úgy, hogy megkapjuk az eredeti számot. Például 1234,56 normál alakja: 1,23456 * 103.
Ha valaki esetleg nem tudná, a hatványozást például így értelmezzük: 1012 = egy egyes és 12 darab 0.)
Például a 1,2 * 1012 -t C++-ban így írhatjuk le szabályosan: 1.2e12, valamint a 3,3 * 10-20 -t pedig így: 3.3e-20. Ezt az alakot általában túl nagy vagy túl kicsi számok esetén használjuk. (Az e betű valójában nem prefix, nem is postfix, hanem infix).
A programozási paradigmák, a szoftverfejlesztés misztikus tanai közé tartoznak. Akár a mágia különböző formái, ezek is más-más megközelítéseit jelentik a számítógépek kódolásának. Bár elég jól dokumentált, komoly irodalommal bíró fogalmakról van szó, pontos definíciókról mégsem beszélhetünk, ahogy…..
Az ezoterikus programnyelveken már túl vagyunk, ezúttal pedig egy valamivel praktikusabb válogatással állok elétek. Magyar és nemzetközi programozó fórumokon egyaránt visszatérő kérdés, hogy melyik programozási nyelvvel érdemes a szoftverfejlesztés rögös útjára lépni. Szeretnék bemutatni néhányat…..