Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Hilfe mit Getch

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
13.02.2005, 14:34 Uhr
~Hurricane
Gast


Hey Leute....hab ein über einfaches Programm...aber es funzt irgendwie nicht....habe es aus einem Übungsbuch


C++:
#include <stdio.h>
main() {
   printf("\nDieser Text\nenthaelt\nviele\nZeilenumbrueche.");
   getch();
}




Mein Compiler sag mir dass getch undeclared ist...hmmm....was soll ich machen?...davor bei einem anderen übungsprogramm funzte getch aber prima....


Bearbeitung von Pablo:

CPP-Tag hinzugefügt


Dieser Post wurde am 13.02.2005 um 19:51 Uhr von Pablo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
13.02.2005, 14:40 Uhr
CaesarCortezz
minderer Student


int main() {
--
Thus spake the master programmer:

``When the program is being tested, it is too late to make design changes.''
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
13.02.2005, 14:41 Uhr
CaesarCortezz
minderer Student


also quasi:


C++:
#include <stdio.h>
int main() {
printf("\nDieser Text\nenthaelt\nviele\nZeilenumbrueche.");
getch();
return 0;
}


--
Thus spake the master programmer:

``When the program is being tested, it is too late to make design changes.''
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
13.02.2005, 14:43 Uhr
RedEagle



Für getch() braucht man doch "conio.h", oder?? und das ist nicht ANSI-Standart
versuch mal getchar(); das geht glaub'ich
--
MFG RedEagle
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
13.02.2005, 14:59 Uhr
~Hurricane
Gast


Getchar....klappt...danke....bin totaler noob....finde es aber richtig cool dass hier alle so hilfsbereit sind...thanks nochmal...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
13.02.2005, 15:16 Uhr
~Hurricane
Gast


Und wie ist es wenn ich sowas benutze?

C++:
#include <stdio.h>

main() {
       int x,y;
       printf("\n\tl . R e c h e n p r o g r a m m\n");
       printf("\nBitte x eingeben :");
       scanf("%i",&x);
       printf("Bitte y eingeben : ");
       scanf("%i",&y);
       printf("\n %i + %i ist %i",x,y,x+y);
       printf("\n %i - %i ist %i",x,y,x-y);
       printf("\n %i * %i ist %i",x,y,x*y);
       printf("\n %i / %i ist %i",x,y,x/y);
       printf("\n %i %% %i ist %i",x,y,x%y);
       getchar();
}




wenn ichdie beliebigen zahlen eingebe schließt sich das programm und zeigt mir nicht das ergebnis an....


Bearbeitung von 0xdeadbeef:

cpp-tags eingefügt. Nächstes mal selbst machen.


Dieser Post wurde am 13.02.2005 um 15:36 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
13.02.2005, 15:23 Uhr
0xdeadbeef
Gott
(Operator)



Zitat von RedEagle:
ANSI-Standart

Ich weiß, dass das ein Standardschreibfehler ist, aber...ARGH!

@Hurricane: Das liegt daran, dass nach dem scanf noch ein return im Eingabepuffer ist. In diesem Fall sollte ein zweites getchar helfen, generell würd ich aber eher die gesamte Eingabe puffern. Das sähe dann etwa so aus:

C++:
#include <stdio.h>

int main(void) {
  int x,y;
  char eingabe[100];

  puts("\tl . R e c h e n p r o g r a m m\n");

  printf("Bitte x eingeben : "); fflush(stdout);
  fgets(eingabe, sizeof(eingabe), stdin);
  sscanf(eingabe, "%i", &x);

  printf("Bitte y eingeben : "); fflush(stdout);
  fgets(eingabe, sizeof(eingabe), stdin);
  sscanf(eingabe, "%i", &y);

  printf("\n %i + %i ist %i\n", x, y, x + y);
  printf(" %i - %i ist %i\n", x, y, x - y);
  printf(" %i * %i ist %i\n", x, y, x * y);
  printf(" %i / %i ist %i\n", x, y, x / y);
  printf(" %i %% %i ist %i\n", x, y, x % y);

  getchar();

  return 0;
}


...oder du kannst die eigentlich sinnvolle Variante nehmen und das getchar() aus dem Programm rauslassen - da hats nämlich eigentlich nichts zu suchen. Stattdessen schreibst du ein startskript, das du anstelle der EXE ausführst. Das sieht dann so aus:

batch:

@echo off
programm.exe
pause


bzw. unter UNIX:

sh:

#!/bin/sh

./programm
read


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 13.02.2005 um 15:32 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
13.02.2005, 15:34 Uhr
enno-tyrant
Frag nicht!


nutze bitte code-tags

C++:
#include <stdio.h>
#include <conio.h>

main() {
int x,y;
printf("\n\tl . R e c h e n p r o g r a m m\n");
printf("\nBitte x eingeben :");
scanf("%i",&x);
printf("Bitte y eingeben : ");
scanf("%i",&y);
printf("\n %i + %i ist %i",x,y,x+y);
printf("\n %i - %i ist %i",x,y,x-y);
printf("\n %i * %i ist %i",x,y,x*y);
printf("\n %i / %i ist %i",x,y,x/y);
printf("\n %i %% %i ist %i",x,y,x%y);
getch();
}




Bearbeitung von Pablo:

von CODE --> CPP


--
...um etwas zu verstehen muß man wissen wie es funktioniert...

Dieser Post wurde am 13.02.2005 um 19:52 Uhr von Pablo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
13.02.2005, 16:59 Uhr
~honk
Gast


@ enno-tyrant
für c/c++ code sollte man lieber die cpp tags verwenden, erhöht die lesbarkeit
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: