Einzelnen Beitrag anzeigen
Alt 23.11.2003, 21:02   #12
Flink
Hero
 
Registriert seit: 29.08.2001
Alter: 57
Beiträge: 904


Flink eine Nachricht über ICQ schicken Flink eine Nachricht über Skype™ schicken
Standard

Zitat:
Original geschrieben von kikakater
Ich würde es aber nach Variante 1 machen, weil man sich die dauernde Subtraktion von 1 in der Zeile

tabelle [ ((unsigned char)string[i])-1 ] ++;

erspart.

Die Anzahl der Elemente von tabelle muß von 255 auf 256 erweitert werden - mit Element 0 als quasi nutzlosem Element.

static int tabelle[256], akt_char; // static, weil schneller

außerdem würde ich nicht static verwenden, weil das Feld tabelle sonst am Heap und nicht am Stack abgelegt wird (=Speicherplatzverschwendung).

akt_char wird nicht verwendet und ist demnach obsolet.
Das hängt ab vom Gültigkeitsbereich der Ascii-Codes. '\0 ist wohl kein Zeichen. Man könnte auch andere Sonderzeichen weglassen. Tabelle[256] ist notwendig.
Guter Hinweis zum Heap.
____________________________________
Bibel
Flink ist offline   Mit Zitat antworten