Hirdetés
- sziku69: Fűzzük össze a szavakat :)
- Viber: ingyen telefonálás a mobilodon
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- GoodSpeed: Márkaváltás sok-sok év után
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- bb0t: Ikea PAX gardrób és a pokol logisztikája
- D@reeo: Pi-hole és a Telekom Sagemcom F@st 5670 DNS beállítása
- Gurulunk, WAZE?!
Új hozzászólás Aktív témák
-
nyunyu
félisten
Bontsuk kette a problemat.
Mint rajottem, az ftell/fgetpos csak akkor mukodik "helyesen", ha mar olvastam a streambol.
Ha elso olvasas elott adom ki, akkor -20-at ad vissza, es innentol fogja egyesevel novelni/csokkenteni a poziciot minden getc/ungetc utan, nem nullatol.
Ez a kisebbik problema.Nagyobbik bajom az, hogy a getc platform fuggoen kezeli a sorvege karaktereket.
Pl. Visual C++ 2010 Win alatt ha \n karaktert lat, akkor lenyeli az utana jovo \r karaktert es mindig kettovel noveli a fajl poziciot.
Ez azert problema, mert a feldolgozando forraskodok egy resze UNIX alatt lett mentve, ott meg nincsen \r az \n utan, de akkor is kettovel noveli a poziciot...Plusz nehezitesnek vannak olyan forraskodok is, amiben nincs \n, hanem \r-rel vannak tordelve.

Probaltam szamolni, hany getc/ungetc-nel jarunk, de az sem ad pontos eredmenyt, mivel nem tudom eldonteni, hogy a latott \n karakternel eggyel vagy kettovel noveljem az indexet.
Windows alatt automatikusan utana rakott \r egyaltalan nem jon at a getc-vel, nem tudom megszamolni. -
nyunyu
félisten
Hogyan lehet _megbizhatoan_ lekerdezni, hanyadik karakternel tartunk az eppen feldolgozott fajlban, majd a lementett poziciora visszaugrani?
ftell neha negativ erteket ad vissza, majd a kovetkezo karakter olvasasa utan az elozo rossz ertek+1-et, aztan fseek(fp, pos, SEEK_SET)-re total mashova ugrik, nem a "megjelolt" karakterhez.
fgetpos paros is ugyanazokat az ertekeket adja vissza, mint az ftell.
Ha manualisan szamolom a karaktereket minden getc/ungetc-nel, akkor sem pont oda ugrik vissza.
Probaltam Win alatt VC++ 2010-zel, meg linux alatt GCC-vel, mindegyik produkalja.
Feldolgozando fajl szoveget tartalmaz, mind win, mind linux stilusu sortores is elofordulhat benne. -
nyunyu
félisten
Viszont elojott az a kerdes, hogyan lehet beallitani, hogy milyen fajlt toljon be a fordito az stdin-re?
Linux/UNIX alatt "cat fajlnev | program"-mal kell futtatni.Meg jo, hogy DOS/Windows parancssor is POSIX kompatibilis, igy mukodik az input/output atiranyitasra szolgalo <,>
Igy a programot igy kell futtatni:
program <fajlnevAzt meg be lehet allitani a VSben, hogy milyen parancssori parameterekkel debugolja a programot. (Configuration properties/Debugging/Command Arguments)
-
nyunyu
félisten
Sikerult megetetni Visual Studio 2010-zel, be kellett allitani a projekt tulajdonsagainal Configuration properties/C/C++/Preprocessor alatt a Preprocessor definitions-ben, hogy "_CRT_SECURE_NO_WARNINGS"
Igy mar nem ugat az strcpy es tsai fuggvenyek elavultsagara, hanem lefordul.Viszont elojott az a kerdes, hogyan lehet beallitani, hogy milyen fajlt toljon be a fordito az stdin-re?
Linux/UNIX alatt "cat fajlnev | program"-mal kell futtatni.Meg kene maradnia platformfuggetlennek a kodnak, igy nem szivesen irnam at a fajlkezeles reszet.
-
nyunyu
félisten
Adott egy standard C kod, ami eredetileg UNIX alatt lett fejlesztve, mezei parancssoros program.
Meg lehet ezt a kodot etetni valami modern windowsos fejlesztokornyezettel, hogy lepesrol lepesre tudjam debugolni, nezni hogyan alakulnak a belso valtozok aktualis ertekei?
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Apple iMac 19.2 i5-8500 Radeon Pro 560X 4GB 16GB 256GB SSD 21.5" 4K Retina
- Samsung Galaxy A56 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
- HIBÁTLAN iPhone 13 mini 128GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3050, 100% Akkumulátor
- LG 83B4 - 83" OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox Ready
- GYÖNYÖRŰ iPhone 12 Pro 128GB Graphite-1 ÉV GARANCIA - Kártyafüggetlen, MS3669, 100% Akksi
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi


