Je regardais le code source de nmap qui a été publié en 1997 et j'ai remarqué cette section de code qui me semble un peu étrange:
int i=0, j=0,start,end;
char *expr = strdup(origexpr);
ports = safe_malloc(65536 * sizeof(short));
i++; /* <<<<<< */
i--; /* <<<<<< */
for(;j < exlen; j++)
if (expr[j] != ' ') expr[i++] = expr[j];
expr[i] = '\0';
Pourquoi auriez-vous i++;et puis i--;juste après l'autre? iest 0, puis i++se tourne ivers 1. Après cela, i--se tourne ivers 0.
Lien vers le code source d'origine. Rechercher:
i++;
i--;
Quelqu'un peut-il expliquer à quoi cela sert?
-Ocela optimise effectivement ces instructions.