Eu estava olhando o código fonte do nmap lançado em 1997 e notei essa seção de código que me parece um pouco estranha:
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';
Por que você teria i++;e i--;depois um do outro? ié 0, então i++vira ipara 1. Depois disso, i--vira ipara 0.
Link para o código fonte original. Procurar por:
i++;
i--;
Alguém pode explicar para que serve isso?
-Oisso, ele realmente otimiza essas instruções.