Keresés

Új hozzászólás Aktív témák

  • Sk8erPeter

    nagyúr

    válasz Benmartin #1102 üzenetére

    Hali!
    Köszi, hogy megírtad, de ez a program igen érdekes dolgokat csinál :D
    A végeredmény az lesz, hogy MINDEN karakter után tesz egy szóközt. Egy fájlnál az összes sortörést is kitörölte (mondjuk nem értem, hogy ezt a másiknál miért nem tette).
    Szemléltetésként ilyen lesz: [link] (itt épp php-kódokat másoltam ki pdf-ből, a sorszámozást ki akartam szedni, de ez a lényeg szempontjából tök mindegy)

    Első lefordításnál ilyen hibát dob:
    Visual Studio hiba

    (már a while(!feof(filelist))-nél baja van)
    Gondolom ezért is működik hibásan többek közt...
    Aztán már le sem akar fordulni (létrehozni az exe-t), na mindegy, itt valami nagyon nem jó... :D
    De azért thx. :R Egy javított verzió jól jönne... :B Előre is köszi!

    Egyébként az "általános kérdéseket" hajnali fél 5 közeledtével fogalmaztam meg, így simán elképzelhető, hogy hülye kérdést tettem fel... :D

    (#1103) doc: igazából mindkettő... de inkább gyakorolni szeretnék C-ben.
    Nem használok Linuxot (egyelőre). Tehát elsősorban a C-s megoldás érdekelne.
    Nyilván létezik egyébként olyan külső program (pl. Lupas Rename), amivel lazán megoldható, de abból nem lehet tanulni.

    (#1104) Jester01: Esetleg tudnál egy javított változatot mutatni? :B

  • Jester01

    veterán

    válasz Benmartin #1102 üzenetére

    Ajjjaj ilyen rossz példával ne kábítsuk szegény tanulókat :P
    Hirtelen ennyi:

    1. te nem a sorok elejéről szedted le az első 4 karaktert
    2. az fscanf visszatérési értékét célszerű ellenőrizni, nem pedig a feof-ot
    3. %s formátummal nem olvasunk fájlneveket (sem) mert megáll a szóközöknél
    4. az fscanf-ben nincs hossz limit
    5. teljesen felesleges betölteni a memóriába a fájlt
    6. strcat-hoz hiányzik a megfelelő #include
    7. malloc-hoz hiányzik a megfelelő #include
    8. a malloc void*-ot ad vissza, csúnyán néznek azokra akik ezt cast-olják
    9. a lefoglalt memóriát nem szabadítod fel
    10. a változók globálisak nem lokálisak
    11. az ftell nem unsigned int-et ad vissza
    12. hibakezelés teljes hiánya

Új hozzászólás Aktív témák