Skracanie kodu, czyli zbędne operacje

Skracanie kodu, czyli zbędne operacje
xeo545x39
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Kosmos
  • Postów: 1574
0

Witam! Piszać zwykły krótki programik, natknąłem się na pewne błędy wynikające z tego, że getline nie przyjmuje string. Chciałem zatem skrócić jakoś kod, służąc się wiedzą kolegów programistów. Oto mój kod:

Kopiuj
#include <xeo>

using namespace std;

int main()
{
    string text;
    char text2[256]; //chciałbym jedną zmienną
    cout << "Wpisz tekst do wypisania: " << endl;
    cin.getline(text2, 256);
    text = text2;
    xeo::textout(text, 100); //funkcja, która wypisuje tekst jak na maszynie, chyba wiecie o co chodzi ;p
    return 0;
}

Jak zrobić żeby od razu jakoś do stringa wczytywać linijkę?

SZ
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 105
2

Jak nie przyjmuje stringu?!!!!!!!!

Kopiuj
string tekst;
getline(cin, tekst);
xeo545x39
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Kosmos
  • Postów: 1574
0

A kurde!! F*ck, haha zrobiłem tak: getline(text, 256); bo ten drugi argument to gdzie a nie ile, a pierwszy skąd xD Głupia pomyłka dzięki :D

Azarien
  • Rejestracja: dni
  • Ostatnio: dni
1

nie tyle pomyłka, co zupełnie inne getline:

Kopiuj
istream& istream::getline (char* s, streamsize n );

to jest metoda strumienia, przyjmująca char* i rozmiar

Kopiuj
istream& getline ( istream& is, string& str );

to jest funkcja globalna, przyjmująca strumień i stringa.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.