Emelt infó érettségi programozás részénél Free Pascal használata mellett a fájlok elérési útját hogy érdemes megadni?
Ugye alapból a Free Pascal a saját könyvtárának bin mappájában megtalálható mappában (pl. i386-win32) keresi az állományokat amiket be akarok olvasni, és ott is hoz létre újakat abban az esetben, ha nem adok meg más elérési útvonalat. (pl. assign(f,'fajl.txt');)
Ha ezt ebben a formában adom meg, a javító tanár fogja tudni értelmezni ezt, fogja tudni hogy miért nem találja a program a fájlt, ha a megoldás mappában így helyezem el? Mert ugye ha azt adnám meg hogy M:\fajl.txt, lehet a javító tanár nem tudja megtalálni/beolvasni azt.
Ha assign-nel adod meg, mindig az aktuális könyvtárban hozza létre, vagy keresi a program a fájlt, sosem a BIN-ben.
Lehet hogy az a felület, amellyel szerkeszted a programot, ott keresi vagy hozza létre a programmal kapcsolatos fájlokat, de ez a Pascal programban végzett fájlkezelésre nem vonatkozik.
Ha '' jelek közt írod a fájlnevet, bármiféle elérési út nélkül, mindig az aktuális könyvtárban keresi vagy hozza létre az adott fájlt.
Igen, de ha csak a forráskódot, úgy értem a .pas fájlt adom be, mert tudtommal az exe fájlt és többit nem kell, akkor ha a javító tanár lefordítja a forráskódot, ő azt fogja tudni használni, meg fogja tudni találni a forrásállományt? Mert ha nem ugyanabba a mappába kerül be az exe fájl fordítás után ahol a forrásállományom és kódom van, akkor a futtatott program nem fogja megtalálni a forrásállományt, ugye alapértelmezettként ha lefordul a forráskód, akkor az a bin mappán belülre kerül, messze az én beadott fájljaimtól.
Remélem érthető hogy pontosan mire lennék kíváncsi.
A tanárnak tudnia kell hogy az ő gépén amelyen a dolgozatot javítja, miként van beállítva a Free Pascal, sajnos ilyen szinten nem értek hozzá hogy miként és hogy lehet beállítani ezt amit szeretnél, azt elmondod, hogy a forrásállomány az exe fájlra miért hivatkozik (a forrásállományból lefordított exe fájlra?) és miért kell ez?
Ha azon aggódsz hogy a .exe nem oda kerül ahol fordítják, azt a tanárnak kell tudnia hogy ő a munkakörnyezetében mit és hogy állított be.
Mivel úgy tapasztaltam, hogy fordításnál, amikor a programot futtatom a Free Pascal felületéről, akkor elérési út nélkül megadott állomány a bin mappából, és nem a programot vagy a forráskódot tartalmazó mappából keríthető elő, másképp nem találja. Sokszor még akkor is szrakodik, amikor elérési útvonalak be vannak állítva a configba. Viszont ha az exe fájlt futtatom, akkor az nyílván abban a mappában keresi a fájlt, ahol ő van, de ugye érettségin nem az exe fájlt nézik.
De még mindig jobb az, ha elérési út nélkül adom meg a fájlt és esetleg a tanárnak pakolnia kell a fájlokat, mintha egy olyan helyre mutatok, ami nem is létezik a tanár gépén, nem?
Az előző válasz helytelen, az érettségin egészen világosan a rendszergazda által kijelölt munkakönyvtárba kell mindent menteni, és a tanár esetleg egészen másik gépen fogja javítani. Csak a munkakönyvtáradat fogja a rendszergazda az érettségi végén lemásolni!
Kapsz egy munkakönyvtárat, és mindent ott kell tartani. A legtisztább ügy, és ezt tanácsolom neked, hogy a kapott forrásállományokat ebbe a könyvtárba másold (esetleg ezalatt létrehozott Feladat4 vagy hasonló könyvtárba), és a programodat úgy írd meg, hogy a kimeneti állomány is ugyanitt legyen, tehát a forrásprogram, a bemeneti állomány és a kimeneti állomány is. Úgy, ahogy a mintamegoldásokban is. A mintában a bemeneti állomány nincs ugyanott, mert nem duplikálják, de célszerű azt is odatenni, hogy egy az egyben futtatható legyen a program machinációk nélkül.
Nagyon fontos, hogy nem adunk rejtvényeket a javító tanárnak. A te érdeked, hogy minél gyorsabban, egyszerűbben átlássa a munkádat, és értse, hogy mit akartál csinálni.
Free Pascalt rég használtam, de ez a viselkedés elég furcsa, amit leírsz, valószínűleg egy beállítással megváltoztatható. De ha így van, akkor a megnyitási és a mentési útvonalnak a . könyvtárat a legcélszerűbb megadni! Mert ha a te könyvtárad a dokumentunokban a Vizsgázó13 user asztal könyvtára, akkor egy abszolút elérési úttal nagyon nehezen javíthatóvá válik, amikor a tanár egy CD-n megkapja az összes vizsgázó dolgozatát.
"mert tudtommal az exe fájlt és többit nem kell"
DE, a kimeneti állományt be kell adni! Attól függetlenül, hogy természetesen a programodnak azonos formában elő is kell állítania, de be is kell adni. A bemeneti állományt pedig célszerű mellétenni, hogy egyszerűen fusson a program a javításkor. Az exét nem kell. (Előző)
Vagyis a programkódban semmiféleképpen nem érdemes abszolút elérési útvonalat használni, fogja tudni a tanár relatívval használni ha véletlenül nem találja meg a program elsőre a fájlt emiatt?
"De ha így van, akkor a megnyitási és a mentési útvonalnak a . könyvtárat a legcélszerűbb megadni!"
Pontosan mire gondoltál itt, melyik könyvtár?
Amit leírtam, a . könyvtár. Emelt érettségire készülve nyilván tudod, hogy ez az aktuális könyvtár jele, és akkor abszolút módon is hivatkozhatsz rá ezzel a trükkel.
De a relatívnak is működnie kell normális beállításokkal, és ezt menet közben ellenőrizni is tudod, hogy hova mentett.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!