Software > Coding

Gemeinschaftsprojekt?

<< < (17/18) > >>

ragnar76:
Ich habs so gemacht, läuft mit gcc und Pure C


--- Code: ---#include <stdio.h>

int main(void)
{
  char key;

  printf("druecke Taste \"A\", \"a\" oder \"q\" um das Programm zu beenden\n");

  while((key = getchar()) !='q') {
    if (key  == 'A')
    {
      printf("A gedrueckt\n");
    }
    else if(key == 'a')
    {
      printf("a gedrueckt\n");
    }
  }
}
--- Ende Code ---

Ganz vergessen, von PHP und Bash kenne ich die Case Anweisungen. Wie stehts damit?

simonsunnyboy:
Die gibts auch in C:


--- Code: ---switch(var)
{
case 'a':
/* tu was */
break;
case 'b':
/* tu was anderes */
break;
default:
/* wenn nix zutrifft tu das hier */
break;
}
--- Ende Code ---

Wichtig sind die break Anweisungen, sonst bearbeitet er auch immer den nachfolgenden case!

m0n0:
Das Problem hierbei ist nur das der return code von Cnecin() ein 32 Bit Wert ist - in PureC kann aber maximal ein 16 Bit Wert für eine Switch Anweisung verwendet werden. Das würde dazu führen das der Rückgabewert von Cnecin() zuerst in einen 16Bit Wert komprimitert werden muss...

simonsunnyboy:
Ich denke das Problem hast du nur, wenn du volle 32 Bit abfragst.
Ansonsten bau halt einen Typencast ein


--- Code: ---switch((uint16_t)my32bit)
--- Ende Code ---

m0n0:
Der Abzufragende Wert liegt aber in den oberen 16 Bit... Mir ist es egal - meinetwegen kann auch switch verwendet werden, ich wollte halt ohne solche Details auskommen, wegen Anfängern und so...

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln