Aus gegebenem Anlass wegen der Diskussion hier >>27130 hat Felix mal verschiedene Varianten getestet. [0] Einmal die Original-
switch
-Variante, zwei
strcmp
-Varianten und eine einfache
if
-Variante. Die Ergebnisse haben Felix überrascht – beide
strcmp
-Varianten waren weit abgeschlagen. Die anderen beiden waren in etwa gleichauf. Felix hatte erwartet, dass der Compiler die
strcmp
-Aufrufe besser optimiert.
FEFE: 1.450s
SIMPLE: 1.529s
STRCMP0: 4.307s
STRCMP1: 3.322s
(kompiliert mit gcc -O2)
Vielleicht können wir ja hier einen kleinen Optimierungswettbewerb starten :3 Felix wird seine Lösung später pfostieren.
[0] https://pastebin.com/fdDGYMZb