[C++] Jak uruchomić program C++ w Windowsie

matemix
Użytkownik
Użytkownik
Posty: 465
Rejestracja: 10 cze 2008, o 19:38
Płeć: Mężczyzna
Lokalizacja: Wrocław
Podziękował: 12 razy
Pomógł: 1 raz

[C++] Jak uruchomić program C++ w Windowsie

Post autor: matemix »

Jak uruchomić program C++ w Windowsie na kompilatorze Dev-C++?

Teoretycznie wystarczy ściągnąć kompilator, napisać program, zapisać program z odpowiednim rozszerzeniem, skompilować program i uruchomić program w tymże kompilatorze. Praktycznie oczywiście to nie działa.

Podobno, aby uruchomić program na początku należy dodać bibliotekę:

Kod: Zaznacz cały

#include <conio.h>
a na końcu w main'ie dopisać:

Kod: Zaznacz cały

getch();
Uruchomiłem zresztą tak kilka programów, ale dzisiejszego dnia sposób ten z niewiadomych mi przyczyn przestał działać, a kompilator nie reaguje ani na polecenie kompiluj, ani kompiluj i uruchom, ani uruchom, bo program jest nieskompilowany. :evil:

Wiem, że istnieje też sposób skompilowania programu i uruchomienia go z cmd, bo tak robiłem ale nie pamiętam co trzeba zrobić. Czy ktoś wie? I dlaczego sposób z biblioteką przestał działać?
Ostatnio zmieniony 27 paź 2011, o 23:04 przez Afish, łącznie zmieniany 1 raz.
Powód: Poprawa wiadomości.
Awatar użytkownika
ares41
Użytkownik
Użytkownik
Posty: 6499
Rejestracja: 19 sie 2010, o 08:07
Płeć: Mężczyzna
Lokalizacja: Kraków
Podziękował: 142 razy
Pomógł: 922 razy

[C++] Jak uruchomić program C++ w Windowsie

Post autor: ares41 »

Spróbuj wczytać

Kod: Zaznacz cały

#include <iostream>
A potem użyj zamiast getch'a:

Kod: Zaznacz cały

system("pause");
matemix
Użytkownik
Użytkownik
Posty: 465
Rejestracja: 10 cze 2008, o 19:38
Płeć: Mężczyzna
Lokalizacja: Wrocław
Podziękował: 12 razy
Pomógł: 1 raz

[C++] Jak uruchomić program C++ w Windowsie

Post autor: matemix »

ares41 pisze:Spróbuj wczytać

Kod: Zaznacz cały

#include <iostream>
A potem użyj zamiast getch'a:

Kod: Zaznacz cały

system("pause");
Nie pomaga. To samo, co przy poprzednim sposobie.
abc666

[C++] Jak uruchomić program C++ w Windowsie

Post autor: abc666 »

matemix, strasznie trudno powiedzieć czemu nie działa. Najlepiej jeśli wrzucisz jakiś screen. Może coś przełączyłeś przypadkiem, może pojawiają się jakieś błędy, których nie widzisz. Tak to ciężko coś powiedzieć.
Xitami

[C++] Jak uruchomić program C++ w Windowsie

Post autor: Xitami »

bo to zła biblioteka była...

na początek starczy: ideone.com
tam skompilujesz i uruchomisz program
gdyby 5 (lub 15 po zalogowaniu) sekund było za mało to
plik EXE (wynik kompilacji) możesz uzyskać np. tu:

Kod: Zaznacz cały

http://www.onlinecompiler.net/


o, jakie fajne:
matemix
Użytkownik
Użytkownik
Posty: 465
Rejestracja: 10 cze 2008, o 19:38
Płeć: Mężczyzna
Lokalizacja: Wrocław
Podziękował: 12 razy
Pomógł: 1 raz

[C++] Jak uruchomić program C++ w Windowsie

Post autor: matemix »

Ok. Już poradziłem sobie z tym problemem i nie wiem co to było. Wykonałem cały ten algorytm zapisu i kompilacji jeszcze raz w nowym folderze i działa.

Ale teraz mam nowy problem. Dlaczego nie mogę użyć funkcji "floor" - czyli zaokrąglenie w dół?

Pisałem swoje programy, ale mam też jakiś przykładowy program z internetu który raczej jest prawidłowo napisany:

Kod: Zaznacz cały

#include <stdio.h>
#include <math.h>
#include <conio.h>

int main ()
{
  printf ("floor of 2.3 is %.1lf
", floor (2.3) );
  printf ("floor of 3.8 is %.1lf
", floor (3.8) );
  printf ("floor of -2.3 is %.1lf
", floor (-2.3) );
  printf ("floor of -3.8 is %.1lf
", floor (-3.8) );
  return 0;
  
  getch();
}
Okno po uruchomieniu zamyka się od razu zupełnie jakby nie było tam "getch()", natomiast przy "system("pause")" w ogóle się nie kompiluje. Programy bez tej funkcji działają normalnie... nie działa mi również funkcja "round".
Ostatnio zmieniony 27 paź 2011, o 23:03 przez ares41, łącznie zmieniany 1 raz.
Powód: Stosuj tagi [code][/code]
abc666

[C++] Jak uruchomić program C++ w Windowsie

Post autor: abc666 »

Kod: Zaznacz cały

return 0;
Wychodzi z funkcji i zwraca jako jej wynik zero. Zakończenie funkcji main() jest praktycznie równoważne z zakończeniem programu.
matemix
Użytkownik
Użytkownik
Posty: 465
Rejestracja: 10 cze 2008, o 19:38
Płeć: Mężczyzna
Lokalizacja: Wrocław
Podziękował: 12 razy
Pomógł: 1 raz

[C++] Jak uruchomić program C++ w Windowsie

Post autor: matemix »

abc666 pisze:

Kod: Zaznacz cały

return 0;
Wychodzi z funkcji i zwraca jako jej wynik zero. Zakończenie funkcji main() jest praktycznie równoważne z zakończeniem programu.
Racją. Po co w takim razie ktoś to tam dopisał?

Mam jeszcze jedno pytanie dlaczego nawet taki prosty program w którym wydawało się, że nic nie może nawalić zwraca mi takie bzdury:

Kod: Zaznacz cały

#include<stdio.h>
#include<math.h>
#include<conio.h>

int main(void)

{

double fi;
double D;
double HgPn;
double HgPd;
double HdPn;
double HdPd;

printf("podaj szerokosc geograficzna: ");
scanf("%lf",&fi);

printf("podaj deklinacje obiektu: ");
scanf("%lf",&D);

HgPn=fi+90.0-D;
HgPd=90.0-fi+D;
HdPn=fi-90.0+D;
HdPd=-90.0-fi-D;

if (fi > 0) 

printf("wysokosc gorowania wynosi : %lf\n ",HgPn);
printf("wysokosc dolowania wynosi : %lf\n ",HdPn);

if(fi < 0)

printf("wysokosc gorowania wynosi : %lf\n ",HgPd);
printf("wysokosc dolowania wynosi : %lf\n ",HdPd);

if(fi==0)

printf("nie ma wysokosci dolowania i gorowania");

getch();
}
I nie rozumie trzech prostych rozłącznych warunków... Na przykład dla fi większego od zera wypisuje mi wysokość górowania, dołowania i pod spodem znów dołowania, kiedy warunki są proste, a instrukcje po if'ach wyraźnie mówią, że ma wypisać co innego...
Ostatnio zmieniony 29 paź 2011, o 23:15 przez ares41, łącznie zmieniany 1 raz.
Powód: Tagi [code][/code] a nie [quote][/quote]
Xitami

[C++] Jak uruchomić program C++ w Windowsie

Post autor: Xitami »

Kod: Zaznacz cały

if(warunek)
    instrukcja1;
instrukcja2;

Kod: Zaznacz cały

if(warunek) {
    instrukcja1;
    instrukcja2;
}
Widzisz różnicę?
matemix
Użytkownik
Użytkownik
Posty: 465
Rejestracja: 10 cze 2008, o 19:38
Płeć: Mężczyzna
Lokalizacja: Wrocław
Podziękował: 12 razy
Pomógł: 1 raz

[C++] Jak uruchomić program C++ w Windowsie

Post autor: matemix »

Wiedziałem, że to jakiś banalny błąd, tylko nie wiedziałem jaki...
Ostatnio zmieniony 29 paź 2011, o 23:37 przez ares41, łącznie zmieniany 1 raz.
Powód: Nie cytuj całości poprzedniego postu.
ODPOWIEDZ