Miten saan luettua tiedostosta (ja näppäimistöltä) kokonaisen rivin stringiin?
>>-operaattori kun pysähtyy aina myös välilyönteihin, getlinelle pitää syöttää char-taulukko (mistä muuten tietää, kuinka paljon getline luki?), ja tiedosto.get(string_muuttuja) ei suostunut kääntymään vaikka erään c++ -referencen perusteella olisin luullut sen toimivan.
Luulisin, että ainakin näin onnistuu yhden kokonaisen rivin lukeminen:
#include <iostream> #include <string> using namespace std; int main() { string jono; getline(cin,jono); cout << jono; return 0; }
Jos luet yhteen stringiin yhden lauseen, niin saat sen koon esille tyyliin jono.size();. Eli tuo metodi palauttaa stringin koon, käsittääkseni.
cout << jono.size(); // Tulostaa jonon pituuden.
Näytti tuo
getline(virta, jono);
toimivan. Kumma juttu vain miksei koodi tyyliin
virta.getline(jono); //taikka virta.get(jono);
toimi.
lainaus:
Jos luet yhteen stringiin yhden lauseen, niin saat sen koon esille tyyliin jono.size();. Eli tuo metodi palauttaa stringin koon, käsittääkseni.
En kyllä tarkoittanut tuota, mutta kysymys taisikin johtua väärinkäsityksestä.
Aihe on jo aika vanha, joten et voi enää vastata siihen.