scanf-ongelma

Kunpa joku kiltti ihminen vastaisi ihan heti kohta äkkiä, mun ohjelma on jumissa pienen ongelman edessä ja kauhea kiire olisi päästä eteenpäin. :)

Eli, täytyisi lukea näytöltä käyttäjän antama merkkijono. Scanf("%s", ...) vaikuttaa katkaisevan lukemisen ensimmäiseen välilyöntiin, mutta sitä en halua >.< Sen luettavan lausekkeen pitäisi saada sisältää blankoja. Mitä tehdä... *pyörii tuolilla, aargh*
5344
Äänestä

Muut lukivat myös

Vastaukset 5

Vanhimmat

käytä funktiot gets, se lukee koko rivin stdinistä. tosin jos luettava rivi on isompi kuin sille varaamasi tila niin ohjelma kaatuu. mutta tämä onkin kai vaan joku testiohjelma yms

Äänestä
  • Jes, juuri tän tyyppistä vastausta toivoin. Kiitos. :) Yritetäänpä...

    Äänestä

  • Ninni_ kirjoitti:

    Jes, juuri tän tyyppistä vastausta toivoin. Kiitos. :) Yritetäänpä...

    Kyllä se nyt näyttäis toimivan, tosin kääntäjä pääsi jo varoittamaan että "function gets is dangerous and should not be used", mutta noo...kaipa sitä voi ainakin kerran käyttää, aivan kuten kaikkia sieniäkin voi syödä vähintään kerran XD

    Mitä se vaarallinen gets muuten palauttaa, jos se ei onnistu lukemaan riviä? Jotain ykkösestä poikkeavaa, vai NULLin vai minkä?

    Äänestä

  • Ninni_ kirjoitti:

    Kyllä se nyt näyttäis toimivan, tosin kääntäjä pääsi jo varoittamaan että "function gets is dangerous and should not be used", mutta noo...kaipa sitä voi ainakin kerran käyttää, aivan kuten kaikkia sieniäkin voi syödä vähintään kerran XD

    Mitä se vaarallinen gets muuten palauttaa, jos se ei onnistu lukemaan riviä? Jotain ykkösestä poikkeavaa, vai NULLin vai minkä?

    http://www.cplusplus.com/ref/cstdio/gets.html

    Äänestä


Kommentoi aloitusta


Ninni_ kirjoitti:

Kunpa joku kiltti ihminen vastaisi ihan heti kohta äkkiä, mun ohjelma on jumissa pienen ongelman edessä ja kauhea kiire olisi päästä eteenpäin. :)

Eli, täytyisi lukea näytöltä käyttäjän antama merkkijono. Scanf("%s", ...) vaikuttaa katkaisevan lukemisen ensimmäiseen välilyöntiin, mutta sitä en halua >.< Sen luettavan lausekkeen pitäisi saada sisältää blankoja. Mitä tehdä... *pyörii tuolilla, aargh*

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu