Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[C++] EOF jako koniec wprowadzania danych - budowa menu

Ostatnio zmodyfikowano 2014-03-20 23:25
Autor Wiadomość
quatromen
Temat założony przez niniejszego użytkownika
[C++] EOF jako koniec wprowadzania danych - budowa menu
» 2014-03-20 21:17:43
Witam mam problem z budową menu które będzie kończyło wprowadzanie danych po kliknieciu ctrl+d

KOD:
C/C++
#include<iostream>

bool Wczytaj( int Arg1 ) {
    cin >> Arg1;
    return Arg1
}


int main()
{
    int Arg1 = 5;
   
   
    while( Arg1.eof() ) {
        Wczytaj( Arg1 )
    }
}

Nie działa :(

Wydaje sie że kod jest głupi ale napisałem część kodu tylko z tym co potrzebne żeby problem rozwiązać. Poprostu w funkcji wczytaj musze zmieniac wartosci i petla ma wywolywac funkcje dopuki nie kliknie sie  ctrl+d zeby zaprzestac wczytywanie wartosci dla Arg1

Proszę o pomoc.Z góry dzięki:)
P-106875
Admixior
» 2014-03-20 21:38:46
Spróbuj eof() wywołać nie dla Arg1 (bo ten nie ma metod) tylko dla cin: cin.eof()
Jak zrozumiesz c++ to zrozumiesz ten błąd. Dlatego polecam jeszcze się doszkolić.
P-106876
quatromen
Temat założony przez niniejszego użytkownika
» 2014-03-20 22:02:01
Dopiero sie ucze C++, ale nadal nie śmiga :(
P-106878
Admixior
» 2014-03-20 22:18:21
Kilka rzeczy:
1. Jeśli ten kod który wstawiłeś jest identyczny to brakuje Ci średników po "return Arg1" w funkcji, oraz po "Wczytaj(...)" w pętl. //edit: oraz
using namespace std;
 po #include <iostream>
2. Zawsze powinieneś starać się czytać błędy kompilatora i szczególnie analizować linie które ci pokazuje (nawet jeśli nie rozumiesz treści błędu) i linie które bezpośrednio są wcześniej.
3. Następnym razem pisania postu/tematu o błędzie staraj się napisać/skopiować wszystko co może być potrzebne: czyli to co pokaże kompilator też. Mało komu chce się brać nawet krótki program i go kompilować u siebie.
P-106879
michal11
» 2014-03-20 22:46:26
Ten kod w ogóle ci się skompilował ?
P-106883
quatromen
Temat założony przez niniejszego użytkownika
» 2014-03-20 22:54:42
nie skompilował się bo go tu pisałem i rzeczywiscie pominąłem to co napisał administrator Admixior, ale to i tak nie rozwiązuje problemu z eof :( nie mam pojęcia jaką pętle zrobić żeby reagowała na ctrl + d

poprawiony kod :
C/C++
#include<iostream>

using namespace std;

bool Wczytaj( int Arg1 ) {
    cin >> Arg1;
    return Arg1;
}


int main()
{
    int Arg1 = 5;
   
   
    while( cin.eof() ) {
        Wczytaj( Arg1 );
    }
}
[ cpp ]
P-106884
quatromen
Temat założony przez niniejszego użytkownika
» 2014-03-20 23:22:58
W zasadzie napisałem takie cuś ale lipa bo na początku musze podac jedna liczbe, a jak zrobic zeby jej nie trzeba było podawac zeby od razu wpisywac to co sie chce

Kod:
C/C++
#include<iostream>

bool Wczytaj( int Arg1 ) {
    cin >> Arg1;
    return Arg1
}


int main()
{
    int Arg1 = 5;
   
    cin >> Arg1;
    while( !cin.eof() ) {
        Wczytaj( Arg1 )
    }
}
 
Chodzi mi glownie o to zeby nie było cin>>Arg1; przed petla bo trzeba podac jeden znak(a tego wlasnie w programie nie moge miec) tylko od razu zeby wywolywac funkcje Wczytaj( Arg1 )

?? ?? ??
P-106886
quatromen
Temat założony przez niniejszego użytkownika
» 2014-03-20 23:25:33
dzięki wielkie , ogarnałem już , zamykam temat
P-106887
« 1 »
  Strona 1 z 1