Új hozzászólás Aktív témák
-
Jester01
veterán
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.Ezt nehezen hiszem, és ha tényleg így van az bug.
Nekem egyébként működik linuxon, akár text akár binary módban nyitom meg a fájlt. -
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
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.
Ú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!
- Gamer Pc jó áron! RTX 4060/16GB Ram/1TB SSD/R5 5500
- Budget Gamer pc jó áron! 1660 Super/i5-9400F/16GB RAM
- Lenovo ThinkPad L590 FullHD 1080p IPS - i5-8265U, 8GB DDR4, 256GB NVMe SSD, Windows 11 Pro
- Aztech Webshop Modern és retro számítástechnika egy helyen Nyitás: Március 8. 12:00
- Aztech Webshop Modern és retro számítástechnika egy helyen Nyitás: Március 8. 12:00
- Keresünk Galaxy S23/S23+/S23 Ultra/S23 Fe
- Apple Watch Series 10 46mm GPS+Cellular Titanium, Újszerű, 1 Év Garanciával
- 195 - Lenovo Legion Pro 5 (16IAX10) - Intel Core U7 255HX, RTX 5070 (ELKELT)
- AKCIÓ! Acer Predator Helios Neo 16 PHN16 notebook-i9 13900HX 16GB DDR5 1TB SSD RTX 4060 8GB W11
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


