Strona 1 z 2 12 OstatniOstatni
Pokaż wyniki od 1 do 10 z 13
  1. #1
    Obserwator
    Dołączył
    October 07
    Postów
    3
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Post Problem z Dev C++

    Mianowicie pisze poniższy program w Dev C++ (jeden z najprostszych) :


    Kod:
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
    int x,c,v;
    cout << "podaj 2 liczby
    ";
    cin>>x;
    cin>>c;
    v=c+x;
    cout<<"liczba to"<<v;
    }
    Problem polega na tym ze od
    v=c+x;
    cout<<"liczba to"<<v;
    }

    program przestaje chodzić i sie wyłącza.

  2. #2
    Zaawansowany uczestnik moderator
    Dołączył
    May 06
    Postów
    1,460
    Siła Reputacji
    0


    Twoja ocena: Yes No

    No i słusznie ze się wyłącza! Bo co ma robić po wydrukowaniu wyniku? Czy nie przypadkiem zakończyć się?

    Po pierwsze warto by zakończyć działanie funkcji czymś w stylu "return 0;". Jak ostatnio pisałem w Dev c++ to w każdym projekcie domyślnie w main tworzył wywołanie jakiejś "funkcji pauzującej"... Tobie proponuje wpisać np. getch();, czyli:


    Kod:
    #include <cstdlib>
    #include <iostream>
    #include <conio.h>
    using namespace std;
    
    int main(int argc, char *argv[])
    {
    int x,c,v;
    cout << "podaj 2 liczby
    ";
    cin>>x;
    cin>>c;
    v=c+x;
    cout<<"liczba to"<<v;
    getch();
    return 0;
    }

  3. #3
    Obserwator
    Dołączył
    October 07
    Postów
    3
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Wielkie thx, już wszystko działa
    U nas w szkole czegoś takiego nie ma jak

    using namespace std;

    getch();
    return 0;

  4. #4
    Obserwator
    Dołączył
    January 07
    Postów
    493
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Przestrzeń nazw to trochę wyższa szkoła jazdy. I bynajmniej nie przez to, że jest trudne, tylko generalnie 90% użytkowników nie jest do niczego potrzebna i nigdy się z tym nie spotkają (chyba, że korzystają z wielu modułów/pakietów różnych dostawców, to może..)
    namespace std w tym przypadku akurat nic nie robi, bo jest to domyślna przestrzeń nazw i przyjmowana, gdy nie jest podana żadna inna

    getch() to bardzo przydatne cacko w przypadku czekania na klawisz (np. niech użytkownik przeczyta wyniki i naciśnie coś, by można iść dalej).

    Samo zaś return 0 POWINNO być w szkole i jeśli tego nie uczą, to złe nawyki od początku. Kompilator jest na tyle sprytny, że sobie z tym poradzi, ale..
    Zadeklarowałeś funkcję main() jako int więc POWINNA zwracać wartość typu int - w podanym przez kolegę przykładzie równą 0.

    Jeśli nie chcesz zwracać wartości deklarujesz blok jako
    void funkcja();
    void funkcja(int argumenty);
    itp..
    To są drobne niuanse różnic między C a C++, ale warto o tym pamiętać.

  5. #5
    Zaawansowany uczestnik moderator
    Dołączył
    May 06
    Postów
    1,460
    Siła Reputacji
    0


    Twoja ocena: Yes No

    U nas w szkole czegoś takiego nie ma jak

    using namespace std;
    A jednak w kodzie który podałeś takie coś było

    getch();
    A może macie system("pause")? Ma działania ciut inne, ale w twojej sytuacji otrzymasz ten sam efekt.

  6. #6
    Obserwator
    Dołączył
    October 07
    Postów
    3
    Siła Reputacji
    0


    Twoja ocena: Yes No

    My te programy piszemy na linuxach w terminalu( Midnight Commander).
    Wtedy skladnia wygląda tak:
    #include <iostream.h>
    main()
    {
    instrukcja
    }


    i to działa:|
    Jak w xp-eku jest wszystko ok to na linuxie to nie chodzi.
    (jak by nie mogli lekcji na xp robić, DevC++ jest za darmo)

  7. #7
    Obserwator
    Dołączył
    June 05
    Postów
    826
    Siła Reputacji
    0


    Twoja ocena: Yes No

    bardzo dobrze, ze nie robią lekcji na XP, bo uczniowie by mysleli, ze tylko XP jest na tym swiecie

    a tak swoją drogą, bardzo dobry sposób na zatrzymanie programu, działa bez względu na to gdzie jest uruchomiony i jest banalny w swej prostocie

    int xxx;
    cin >> xxx;


  8. #8
    Obserwator
    Dołączył
    January 07
    Postów
    2
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Widać Twój nauczyciel zatrzymał się na poziomie pierwszych wydań Symfonii C++

  9. #9
    Obserwator
    Dołączył
    September 07
    Postów
    36
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Cytat Napisał potok Zobacz post
    Jak w xp-eku jest wszystko ok to na linuxie to nie chodzi.
    (jak by nie mogli lekcji na xp robić, DevC++ jest za darmo)
    Dobrze napisany program będzie działał niezależnie od systemu.

    Pozatym jak ostatnio sprawdzałem to gcc i midnight commander też były darmo.
    Pod windows też można je uruchomić (cygwin nie gryzie).

  10. #10
    Zaawansowany uczestnik moderator
    Dołączył
    May 06
    Postów
    1,460
    Siła Reputacji
    0


    Twoja ocena: Yes No

    Pozatym jak ostatnio sprawdzałem to gcc i midnight commander też były darmo.
    Pod windows też można je uruchomić (cygwin nie gryzie).
    Dev C++ jest oparty na/wspiera gcc.

Informacje o temacie

Users Browsing this Thread

Aktualnie 1 użytkownik(ów) przegląda ten temat. (0 zarejestrowany(ch) oraz 1 gości)

Zakładki

Zakładki

Uprawnienia

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  

Jak czytać DI?

Powered by  
ATMAN EcoSerwer