Forum: PC-Programmierung switch (C language)


von Gast1 (Gast)


Lesenswert?

Hallo Alle!
Ich muss aus einem Ordner Dateien verarbeiten.Die Dateien werden 
so:X.T.extension genannt.
X ist Protocoltyp und t ist time
Ich habe in meinem Programm Parameter X als Bedinung verwendet.
Das heißt:switch(X){
          case(X1):......break;//X1 und X2 sind mehr bekannt!!!
          case(X2):......break;
          .........
          default:.....;
So sieht erstmal gut aus, wenn ich X kenne ,aber wir nehmen an, dass 2 
Unbekannten  Protocoltyps gegeben werden,dann hab ich hier ein Problem.
Hat jemand von Euch ein tipp oder Hinweus für mich?
Für jede Hilfe bin ich sehr Dankbar.
Mfg

von Gisbert (Gast)


Lesenswert?

Vorschlag:

Mach dir ein Array mit den bekannten Protokolltypen (und Platz für die 
unbekannten).
Bei jedem Protokolltyp den du einliest grast du das Array ab, ob er 
schon drin ist - wenn nicht, trägst du ihn ein und erhöst den Zähler, 
der die Arrraybelegung festhält.

Im nächsten Schritt läufst du jeweils durch das Array mit den bekannten 
Protokolltypen (sollten ja jetzt alle drin sein) und machst ein 
switch/case mit der Laufvariablen.

Nur so als spontane Idee, die Informationen von dir sind ja recht 
dürftig..

Grüße,

Gisbert

von Markus V. (valvestino)


Lesenswert?

Gast1 wrote:
> Hallo Alle!
> Ich muss aus einem Ordner Dateien verarbeiten.Die Dateien werden
> so:X.T.extension genannt.
> X ist Protocoltyp und t ist time
> Ich habe in meinem Programm Parameter X als Bedinung verwendet.
> Das heißt:switch(X){
>           case(X1):......break;//X1 und X2 sind mehr bekannt!!!
>           case(X2):......break;
>           .........
>           default:.....;
> So sieht erstmal gut aus, wenn ich X kenne ,aber wir nehmen an, dass 2
> Unbekannten  Protocoltyps gegeben werden,dann hab ich hier ein Problem.

Was willst Du (sinnvolles) mit einem "unbekannten" Protokolltyp 
veranstalten? Wenn Du was damit anfangen kannst, ist er bekannt, oder? 
Wenn Du ihn nicht kennst, kannst Du ihn logischerweise auch nicht 
verarbeiten.

> Hat jemand von Euch ein tipp oder Hinweus für mich?

Reaktion auf unbekannte Protokolltypen nach "default:", z.B. in Form 
einer (Fehler-)Meldung oder ignorieren, was anderes macht keinen Sinn. 
Zumindest nicht bei den Infos, die Du gepostet hast.

> Für jede Hilfe bin ich sehr Dankbar.
> Mfg

Markus

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.