DEUTSCHE VERSION |
|
Links | | | Forums | | | Comments | | | Report news |
Chat | | | Polls | | | Newsticker | | | Archive |
amiga-news.de Forum > Programmierung > stdin und stdout umlenken | [ - Search - New posts - Register - Login - ] |
-1- | [ - Post reply - ] |
2004-06-08, 21:18 h Mazze Posts: 263 User |
Hi, ich möchte stdin und stdout auf ein neues con-Fenster umlenken. Bei folgendem Code werden 2 neue Fenster geöffnet. Ich möchte aber, dass Ein- und Ausgabe in *einem* Fenster erscheinen. Geht das? code:#include <stdio.h> int x; int main(void) { freopen("con:40/40/200/200/Out","w",stdout); freopen("con:80/80/200/200/In","r",stdin); scanf("%d", &x); printf("lalalan"); scanf("%d", &x); } Grund ist, dass ein mit vbcc kompiliertes Program kein Konsolen-Fenster öffnet, wenn es von der Workbench gestartet wird. Die Ein- und Ausgabe mit printf und co. landet deshalb im Nirwana. [ - Answer - Quote - Direct link - ] |
2004-06-08, 22:00 h thomas Posts: 7718 User |
Versuch's mal mit freopen("con:40/40/200/200/InOut","w",stdout); freopen("*","r",stdin); Bei AmigaDOS müßte das so gehen. Ich weiß nur nicht, ob stdout bis Output() durchgreift, oder ob es nur eine C-interne Variable ist. Gruß Thomas -- Email: thomas-rapp@web.de Home: home.t-online.de/home/thomas-rapp/ [ Dieser Beitrag wurde von thomas am 08.06.2004 editiert. ] [ - Answer - Quote - Direct link - ] |
2004-06-09, 09:03 h gni Posts: 1106 User |
Zitat:Das geht nur, wenn pr_ConsoleTask vom der vbcc-Runtime gesetzt wurde. Zitat:Im Shell-Fall kann Output() als FileHandle für stdout benutzt. Muß aber nicht zwingend. Es gibt keine direkte Verbindung des C std[out,in,err] und (AmigaOS-)Prozessfilehandles. [ - Answer - Quote - Direct link - ] |
2004-06-09, 13:41 h Mazze Posts: 263 User |
Danke für die Hinweise, @thomas: hat nicht geklappt. Falls euch interessiert, was ich mache: ich schreibe einen Sourcecodegenerator. Er erstellt aus einer Eingabedatei eine main.c und main.h. Es gibt Parameter zum Library öffnen, Tooltypes auslesen etc Ich mache das jetzt so, dass beim Start von der Workbench für stdin und stdout je ein con-Fenster mit der AUTO-Option geöffnet wird. Es geht hauptsächlich darum, dass Statusausgaben und Debug-Meldungen nicht im NILwana landen. Wenn ein Anwender echte Shell-Funktionalität braucht, muss er sich halt selbst was mit den entsprechenden Betriebssystem-Funktionen basteln. [ - Answer - Quote - Direct link - ] |
2004-06-09, 18:35 h Holger Posts: 8116 User |
Da Dateinamen ala "con:..." eh nicht portabel sind, kannst Du auch AmigaDOS-Funktionen benutzen, um die Ausgabe zu setzen. Das funktioniert dann auch, wenn das C-Programm nicht stdio benutzt. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Answer - Quote - Direct link - ] |
-1- | [ - Post reply - ] |
amiga-news.de Forum > Programmierung > stdin und stdout umlenken | [ - Search - New posts - Register - Login - ] |
Masthead |
Privacy policy |
Netiquette |
Advertising |
Contact
Copyright © 1998-2024 by amiga-news.de - all rights reserved. |