Zum Inhalt springen

Escape-Taste unter C abfragen


Empfohlene Beiträge

Geschrieben

@Werbeentwickler

ich hab ja nicht unbedingt vor zu merkern aber hast du schon mal was von if else gehört.

damit sollen die programme irgendwie besser zu lesen sein.


if (a==

{

}

else    // statt if (a!=

{

}

[/code]

------------------

mfg maddin

Geschrieben

ooooder:

versuch doch mal, die escape-funktion in ascii umzusetzen (welcher wert ist das noch mal???)

dann müsste der syntax sinngemäß lauten:

escapewert = CHR$(xy)

(getch(escapewert))

oder so, halt irgendwie, halt irgenwie auchnicht? ach weiss, nicht, war eh nur geraten :-)

nein, doch nicht...

verwirre ich dich jetzt?????

Geschrieben

Hi Mohammed,

das Problem ist in der Tat nicht ganz so einfach. In C ist es naemlich so, dass der Eingabepuffer bei Consoleneingaben erst eingelesen wird, sobald ein "return" ausgeloest wird.

Also das Beispiel unten verwendet getchar() und erkennt ESC, wenn erst ESC und dann Return gedrueckt wird.

Wenn das Programm auf alleiniges Druecken von ESC reagieren soll, dann brauchst Du eine Funktion, die Tastaturevents registriert. Solche Funktionen gehoeren aber nicht zum Umfang der Sprache C, sondern sind betriebssystemabhaengige Bibliotheksfunktionen Deines Compilers. Beispielsweise bietet Borland dafuer kbhit() an. Verwendest Du solche Funktionen, verlierst Du aber die ANSI-C-Kompatibilitaet.

/*

ANSI-C-Testdatei fuer Mohammed

*/

#include <stdio.h>

int main()

{

char esc = getchar();

if (esc==27)

printf("das war ein escape");

else

printf("das war kein escape");

return 0;

}

hope this helps

Uli

------------------

Uli's Prüfungspages ... die Seite mit den Prüfungshinweisen

Geschrieben


if (a==

{

}

else    // statt if (a!=

{

}

[/code]

[/b]<HR></BLOCKQUOTE>

Ahoi,

kannst ruhig meckern. Ich habe ja nicht behauptet, dass C meine große Leidenschaft und Stärke ist.

Webentwickler

[Dieser Beitrag wurde von Webentwickler am 11. November 2000 editiert.]

Geschrieben

Hi Webentwickler,

Du bist sogar im Recht, denn ein guter Compiler duerfte den zweiten if-clause durchaus wegoptimieren und durch ein "else" ersetzen, solange a und b nicht als "volatile" definiert sind, was sie ja auch nicht waren. wink.gif

Uli

------------------

Uli's Prüfungspages ... die Seite mit den Prüfungshinweisen

Geschrieben

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">Zitat:</font><HR>Original erstellt von Uli Luethen:

Hi Webentwickler,

Du bist sogar im Recht, denn ein guter Compiler duerfte den zweiten if-clause durchaus wegoptimieren und durch ein "else" ersetzen, solange a und b nicht als "volatile" definiert sind, was sie ja auch nicht waren. wink.gif

Uli

Geschrieben

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">Zitat:</font><HR>Original erstellt von Webentwickler:

Ahoi Uli,

echt?! biggrin.gif Ist ja cool! Und das mit Null Ahnung von C. Vielleicht wird doch noch einmal ein C-Programmierer aus mir *grins*.

Geschrieben

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">Zitat:</font><HR>Original erstellt von Uli Luethen:

Hi Webentwickler,

Du bist sogar im Recht, denn ein guter Compiler duerfte den zweiten if-clause durchaus wegoptimieren und durch ein "else" ersetzen, solange a und b nicht als "volatile" definiert sind, was sie ja auch nicht waren. wink.gif

Uli

Geschrieben

Hallo maddin,

Comperoptimierungen kann man NICHT an Quelltextdateien erkennen, denn das Erzeugnis eines Compilers ist kein Quelltext, sondern ein executable binary; Du muesstest also einen Vergleich der Maschinenbefehle vornehmen, um eine Aussagen treffen zu koennen. Was DEIN Compiler macht, sagt auch nicht viel darueber aus, was ANDERE Compiler machen oder machen duerfen.

Uli

------------------

Uli's Prüfungspages ... die Seite mit den Prüfungshinweisen

Geschrieben

schon richtig, bloß sprach ich anfangs von der lesbarkeit des quellcodes.

du hatest mit der optimierung beim compilieren geantwortet.

was ich dir damit bloß sagen wollte ist, dass es trotz gut optimierten code auch auf einen verständlich geschriebenen quellcode ankommt. schließlich lese ich, wenn ich wissen will, was ein programm macht den quellcode und nicht die binary.

------------------

mfg maddin

Geschrieben

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">Zitat:</font><HR>Original erstellt von maddin:

was ich dir damit bloß sagen wollte ist, dass es trotz gut optimierten code auch auf einen verständlich geschriebenen quellcode ankommt. schließlich lese ich, wenn ich wissen will, was ein programm macht den quellcode und nicht die binary.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...