Program z niestandardowym wejściem.

Program z niestandardowym wejściem.
merlinnot
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 5 lat
  • Lokalizacja:Wrocław
  • Postów:292
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ł

Kopiuj
 cin >> 

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

hauleth
Moderator
  • Rejestracja:ponad 17 lat
  • Ostatnio:dzień
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):

Kopiuj
./a.out < in_file

merlinnot
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 5 lat
  • Lokalizacja:Wrocław
  • Postów:292
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.

Kopiuj
 
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

Kopiuj
 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.

Endrju
To jest dokładnie to co napisał winerfresh.
byku_guzio
  • Rejestracja:prawie 15 lat
  • Ostatnio:około 7 lat
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


MJ
winerfresh ;-D
KR
  • Rejestracja:prawie 16 lat
  • Ostatnio:6 miesięcy
  • Postów:2514
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
merlinnot
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 5 lat
  • Lokalizacja:Wrocław
  • Postów:292
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?
MX
  • Rejestracja:około 17 lat
  • Ostatnio:około 13 lat
1
  • ż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
merlinnot
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 5 lat
  • Lokalizacja:Wrocław
  • Postów:292
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

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.