Keresés

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

  • doc

    nagyúr

    válasz CPT.Pirk #2123 üzenetére

    ja igen, a bool nem C-s tipus (nagyon regota C++ -ozok :D). a bool-t csereld ki int-re, a false-t 0-ra, a true-t meg 1-re es jo lesz

    char *p; -csinál egy pointert. De ez most mutat valamire? Vagy csak üres tömb?
    mivel erteket nem adtal neki, 'sehova' nem mutat, pontosabban de, csak teljesen random helyre (igy ha pl irni akarsz oda, akkor jo esellyel egybol segfaultot kapsz)

    for (p=s; *p; ++p) - itt a kezdőérték mi? A p megkapja az s elemeit? A feltétel meg az hogy amíg van eleme, és addig a ++p lépteti az elemeket?
    a p ugyanoda fog mutatni ahova az s, vagyis a string elso karakterere
    a *p azt a karaktert jelenti, ahova a p mutat. mivel C-ben a 0 hamis, a nem 0 pedig igaz, ez a feltetel akkor teljesul, ha *p nem 0. vagyis ha elertuk a string veget jelzo 0-t, a feltetel hamis lesz, es a ciklusnak vege

    a fuggvenynek semmi koze a scanf-hez, olyan stringgel hivod meg amilyennel akarod, ez nyilvan lehet egy scanf-el bekert is
    amugy a scanf valoban az ordog muve, ne hasznald :D nincs pl semmi ellenorzes a hosszra, igy ha kicsi tombot foglalsz neki akkor egybol el is crashel a programod. azonkivul a whitespace karaktereket (pl space) mezoelvalasztonak fogja fel, tehat ha space-t is tartalmazo stringet akarsz beolvasni, akkor nem mesz vele sokra :)

    erre szokas irni ellenorzott getline fuggvenyt, Gyorben pl. Bauer is 'kiadott' egyet, amit nyugodtan lehet hasznalni vizsgan is

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