Program z niestandardowym wejściem.

Odpowiedz Nowy wątek
2011-10-16 18:34
0

Czy znacie jakiś program, który umożliwiałby wpisanie standardowego wejścia na stałe? Coś takiego jak na ideone.com albo sourcelair.com. Żeby po wpisaniu wejścia on automatycznie wstawiał

 cin >> 

. Wiecie, o co mi chodzi? Używam teraz Visual C++, ale tam takiej funkcji chyba nie ma.


Pozostało 580 znaków

2011-10-16 18:37
0

Nie ogarniam o co chodzi? Może chodzi Ci o przekazanie na strumień (przyjmuję, że plik zawierający wejście nazywa się in_file):

./a.out < in_file

Pozostało 580 znaków

2011-10-16 18:44
0

Właśnie ciężko to wytłumaczyć. Jak wejdziesz na ideone.com, to masz jedną ramkę na kod, a pod nią ramkę "Wejście". Wpisujesz do tej ramki wejście np.


6 7 
1 3 
1 4 
3 2 
4 2 
5 6 
6 5 
3 4

I jak uruchomisz program, to jeżeli w kodzie masz

 cin >>

to on podaje pierwszą liczbę, za kolejnym cinem kolejną itd. Jak włączę w Visualu, to muszę ręcznie wklepywać kolejne liczby. Chodzi o to, żeby program wklepywał za mnie.


To jest dokładnie to co napisał winerfresh. - Endrju 2011-10-16 18:50

Pozostało 580 znaków

2011-10-16 18:50
0

No to winterfresh Ci już napisał co i jak. Gdzieś w VS jest pewnie opcja z jakimi dodatkowymi parametrami uruchamiać program. To się nazywa przekierowanie wejścia


winerfresh ;-D - MJay 2011-10-16 22:11

Pozostało 580 znaków

2011-10-16 19:04
0

tworzysz plik z takim wejściem np nazywasz go wejscie.txt
następnie tworzysz plik .bat z taką treścią:
plik.exe < wejscie.txt
i odpalasz go zamiast pliku exe


░█░█░█░█░█░█░█░█░█░█░█░
edytowany 1x, ostatnio: krwq, 2011-10-16 19:04

Pozostało 580 znaków

2011-10-16 19:14
0

Zrobiłem tak, ale nie działa:

  1. Na pulpicie mam uruchom.bat, w którym jest BICYCLE.exe < wejscie.txt
  2. W pliku wejscie.txt mam wejście
  3. Plik BICYCLE.exe to exe stworzony przez Visuala
    Wywala tylko: C\Documents and Settings\merlinnot\pulpit>BICYCLE.exe 0<wejscie.txt
    Co zrobiłem źle?

Pozostało 580 znaków

2011-10-16 19:31
  • żeby nie pokazywało w oknie wiersza polecenia tej komendy, możesz w pierwszej linijce pliku .bat dodać linijkę @echo off.
  • żeby po zakończeniu wykonywania okno wiersza polecenia się nie wyłączało, w ostatniej linijce batcha dodaj linijkę pause (lub pause > NUL, żeby nie wyskoczył komunikat Naciśnij klawisz...).
  • czy po uruchomieniu się okienka możesz w nim pisać?
    a) jeśli tak, oznacza to, że plik wejściowy jest niepełny - program oczekuje na dodatkowe dane.
    b) jeśli nie, program pewnie się cały czas wykonuje (wina np. słabego rozwiązania).

Not Found
The requested URL /wypasiona_sygnaturka.txt was not found in this brain.
-----
Human/1.0.00 (Earth) Server at Poland Port 65535

Pozostało 580 znaków

2011-10-16 19:36
0

Super! Dzięki dzięki!
Wszystko działa wyśmienicie :)

EDIT:
Miałeś rację, rozwiązanie beznadziejne. Dla małych wejść działa ślicznie, dla większych (122 liczby) plik stron zajmował ponad 1GB, program wykonywał się około 6 minut na 50% mocy procesora, a na końcu i tak się wywalił.


edytowany 1x, ostatnio: merlinnot, 2011-10-16 19:48

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0