kanar5 02.01.06, 17:22 gdy otwieram mój program to nie zdąrze nawet zobaczyć wyniku a już się zamyka. Jak by ktoś znał funkcje zatrzymującą zamykanie byłbym wdzięczny :) Odpowiedz Link Obserwuj wątek Podgląd Opublikuj
prog1101 Re: okno programu za szybko się zamyka 02.01.06, 20:47 to jest szablon: program coś_tam; uses crt; begin clrscr; treść programu end. Odpowiedz Link
jasnoniebieski.5 Re: okno programu za szybko się zamyka 02.01.06, 22:38 Albo na koncu dopisz dwa razy readln (po jednym nie zawsze sie zatrzyma) :) PS. mx.5 - Dzieki za pomoc ale juz zrobilem ten program z zabkami po swojemu. W sumie 30 linijek programu :) Myslalem myslalem az w koncu cos mnie naszlo i w 15 minut mialem nowy kompletny program mieszczacy sie w niecalym oknie :) Ale dzieki za swoj pomysl :) Odpowiedz Link
mx-5 Re: okno programu za szybko się zamyka 02.01.06, 21:05 Nie napisales w jakim jezyku ;) Jesli w Pascalu to faktycznie writeln na koniec pomaga, ale nie ma to za bardzo sensu, bo wynik mozesz obejrzec naciskajac alt+F5 W C jest taka funkcja getch() - czeka na wcisniecie klawisza( get character) Jesli programujesz w C++/ programujesz w C uzywajac kompilatora C++ byc moze bedziesz musial dodac #include <conio.h> z definicja tej funkcji. Pozdrawiam! Odpowiedz Link
hydroxyzine Re: okno programu za szybko się zamyka 03.01.06, 12:40 W C (bibliotece standardowej) to jest, mój drogi, raczej getc(). getch() jest już składnikiem curses. Odpowiedz Link
kanar5 Re: okno programu za szybko się zamyka 03.01.06, 16:29 Język ANSI C prubowalem z tym getch() i getc() ale wyskakiwaly bledy podczas kopilacji. Używam kompilatora Dev-C++ Odpowiedz Link
mx-5 Re: okno programu za szybko się zamyka 03.01.06, 17:13 W skrocie getch to getc bez buforowania. W K&R getch jest wspomniana na str. 112 co czyni ja na rowni funkcji bedacej w standardzie. taki program MUSI kompilowac sie bez przeszkod: #include <stdio.h> int main( void ) { getch(); return 0; } Odpowiedz Link
hydroxyzine Re: okno programu za szybko się zamyka 03.01.06, 18:38 Tak? Proszę bardzo: bec@mewa:~$ cat prog.c && gcc prog.c -o prog #include <stdio.h> int main() { getch(); return 0; } /tmp/ccs0QBW3.o: In function `main':prog.c:(.text+0x1d): undefined reference to `getch' collect2: ld returned 1 exit status bec@mewa:~$ Odpowiedz Link
hydroxyzine Re: okno programu za szybko się zamyka 03.01.06, 18:41 A dla ścisłości: bec@mewa:~$ cat prog.c && gcc prog.c -lcurses -o prog #include <curses.h> int main() { getch(); return 0; } bec@mewa:~$ Odpowiedz Link
mx-5 Re: okno programu za szybko się zamyka 03.01.06, 18:53 Tak zgadza sie - moj blad :) W K&R getch byl po prostu bezposrednio napisany jako funkcja. Mimo to kompilatory w stylu Dev-C++ nie krzycza jak gcc. Program w stylu #include <stdio.h> int main( void ) { getch(); return 0; } pod dev c++ kompiluje sie bez zadnych problemow.Co dziwniejsze z opcja Zgodnosc z ANSI C. A Visual C++ żąda <conio.h> :) Odpowiedz Link
kanar5 Re: okno programu za szybko się zamyka 03.01.06, 19:19 kurde już miałem fajnie okno zamykalo sie po nacisnieciu przycisku ale po napisaniu nastepnego programu skompilowal mi sie w porzadku ale nie chce sie uruchomic tak samo ten wczesniejszy tez sie juz nie uruchamia Odpowiedz Link
kanar5 Re: okno programu za szybko się zamyka 03.01.06, 19:34 nie wyskakuje zaden blad ani nic. Za pomoc z gory dziekuje:) Odpowiedz Link
hydroxyzine Re: okno programu za szybko się zamyka 03.01.06, 19:49 A może byś pokazał kod? Mamy się domyślać? Odpowiedz Link
hydroxyzine Re: okno programu za szybko się zamyka 03.01.06, 19:58 Na wszelki wypadek wyjście po naciśnięciu entera: #include <stdio.h> int main( void ) { getc( stdin ); } Zamiast getc( stdin ) możesz napisać getchar(). Odpowiedz Link
kanar5 Re: okno programu za szybko się zamyka 03.01.06, 20:45 ucze sie programowac z ksiazka i pierwszy program to: #include<stdio.h> main() { printf("ahoj, przygodo\n"); } i on sie wlasnie tak szybko zamykal. Później napisałem tak: #include<stdio.h> #include<conio.h> main() { printf("ahoj, przygodo\n"); getch(); } i dzilalo dobrze ale po napisaniu nastepnego już obydwasie nie chcialy uruchomic chociaz ten pierwszy na poczatku dzialal. Nic po prostu nie wyskakuje, wczesniej migalo tak szybko a teraz nic. Ten drugi program jest tez z ksiazki wiec bedzie mial dobry kod. Ten twoj program tez sie kompiluje i nie chce uruchomic. Odpowiedz Link
hydroxyzine Re: okno programu za szybko się zamyka 03.01.06, 21:44 Dość dziwne, nie wiem czemu tak się może dziać. Te programy są dobre, choć zamiast main() { } Mógłbyś pisać jawnie: int main() { return 0; } Skoro się uczysz, to wypadałoby dbać o takie szczegóły - później będzie za późno ;) Próbowałeś z getchar() bez conio.h? Pokaż też składnię polecenia, którym kompilujesz. Odpowiedz Link
kanar5 Re: okno programu za szybko się zamyka 03.01.06, 21:56 zmienilem te main na int main i dodale return 0 ale dalej nic. Ja używam tego Dev-C++ i tam poprostu naciskam kompiluj, ale żadne błedy nie wyskakuja. Odpowiedz Link
hydroxyzine Re: okno programu za szybko się zamyka 03.01.06, 22:22 Acha. Używasz kompilatora C++, piszesz natomiast w C. To są różne języki. Zainstaluj sobie gcc na przykład - pod windowsa też jest. A moja poprawka miała tylko kosmetyczny charakter. Odpowiedz Link
hydroxyzine Re: okno programu za szybko się zamyka 03.01.06, 22:26 To tylko sugestia zresztą, nie piszę w C++. Być może Dev-C++ potrafi kompilować poprawnie kod zgodny z ANSI C, a problem wynika z czego innego. Odpowiedz Link
kanar5 Re: okno programu za szybko się zamyka 03.01.06, 21:57 Jak byś może mógł mi polecić jakis inny kompilator to bym mógł spróbować. Odpowiedz Link
kanar5 Re: okno programu za szybko się zamyka 04.01.06, 16:44 odinstalowalem tego dev-c++ i zainstalowalem jeszcze raz i mi wszystko dziala. Dziekuja za pomoc. Jak by mogl mi ktos jeszcze podac wzor programu wypisujacy wartosc EOF Odpowiedz Link
hydroxyzine Re: okno programu za szybko się zamyka 04.01.06, 19:44 ??? Nie wiem, czy dobrze zrozumiałem pytanie. #include <stdio.h> int main() { printf( "Wartość EOF: dec %d hex %x\n", EOF, EOF ); } O to ci chodziło? Odpowiedz Link
jacu131 Re: okno programu za szybko się zamyka 05.01.06, 14:41 w dev c++ wystarczy: int main() { ............ ............ system("pause"); return(0); } system("pause"); zatrzymuje program Odpowiedz Link
kanar5 Re: okno programu za szybko się zamyka 05.01.06, 19:26 a jak mam wpisac te EOF aby zakonczyc petle w programie zliczjacym znaki: #include<stdio.h> int main() { double nc; for(nc=0; getchar()!=EOF; ++nc) ; printf("%.0f\n", nc); system("pause"); return(0); } Odpowiedz Link
mx-5 Re: okno programu za szybko się zamyka 05.01.06, 22:12 licznika nie powinienes deklarowac jako double z kilku powodow: 1) zliczasz znaki czyli wynik jest liczba calkowita ( po co rzeczywista ) 2) double jest typem strasznie obeszrnym pamieciowo 3) typow float/double powinno sie uzywac tylko w ostatecznosci/koniecznosci z powodow ich nieprzewidywalnych numerycznych zachowan ;] Odpowiedz Link
kanar5 Re: okno programu za szybko się zamyka 05.01.06, 22:29 tylko nie wiem jak mam zakonczyc dzialanie petli. Musze wypisac ten znacznik konca programu ale nie wiem jak Odpowiedz Link
mx-5 Re: okno programu za szybko się zamyka 05.01.06, 22:48 Jak wiesz EOF nie ma na klawiaturze ;) Aby uzyskac EOF musisz nacisnac ctrl+c. Jesli chcesz by koncem byl enter, nie wstawiasz tam eofa tylko znak nowego wiersza czyli '\n' ( a dokladnie numer tego znaku, bo getchar zwraca inta). I nie za bardzo wiem czy uczysz sie programowac C czy C++ bo w C++ nie ma funkcji printf... Odpowiedz Link
hydroxyzine Re: okno programu za szybko się zamyka 06.01.06, 00:24 To EOF przydaje się, jeżeli strumień wyjściowy programu czytającego plik przekierowujesz na wejście twojego programu. Tzn, zamiast stdin(klawiatura)->program->stdout(monitor) masz tak: wyjście programu czytającego plik->twoj_program->stdout(monitor). W systemach Unix-like zrobisz to tak: cat nazwa_pliku | nazwa_programu. W windowsie nie wiem. W ogóle ciężko w nim cokolwiek zrobić. Podobnie ma się sprawa z czytaniem z pliku otwartego w twoim programie (np. zamiast getchar()=getc(stdin) używasz getc(FILE *plik) - wtedy EOF mówi ci o jego końcu. W przypadku używania klawiatury jako str. wejściowego, korzystanie z EOF mija się z celem. Odpowiedz Link