La taille de l'exécutable généré c'est complètement subjectif et dépendant de la problématique.
Mais réduire la taille du code avant compilation c'est effectivement sans intérêt
Y'a après une différence entre ce que fait Kevin, qui est compresser le code à outrance (au point même d'en perdre la vraie signification), et compresser plusieurs lignes en une seule.
while (i != 0)
{
i = i - 1;
}
Par exemple c'est complètement redondant. Le fait que le "= i - 1" puisse être optimisé en "-= 1" ou "--" est laissé au choix du codeur, de préférence sur des critères de lisibilité du code.
Pour le reste, les { } sont par exemples inutiles (oui je les ai volontairement mis pour ça) donc ça va répartir le "code utile" inutilement sur 4 lignes au lieu de 2.
Ensuite le (!= 0) est par définition du langage C fait implicitement (implicitement mais de manière explicite, vous suivez ?

) par les structures du langage C (sinon on pourrait aussi écrire
if (i != 0 != 0 != 0 != 0 != 0 [...]) jusqu'à obtenir comme résultat un bool, mais on peut attendre très longtemps...)
le i-- (ou équivalent) peut carrément être mis à l'intérieur du while.while (i--) ;
Ensuite, oui,Est-ce vraiment moins clair ? Je trouve que ça a presque gagné en lisibilité moi.
Sinon, pour l'utilisation des trucs réducteurs tels que ++ et += par exemple, ce que je fais par exemple:
(Règle 1 pour tous les <opérateur>=; Règle 2 uniquement pour += et -= )
1. Si c'est une opération "+ valeur" uniquement, réduire en "+=". Si c'est un "+ valeur1 + valeur2" alors non.
2. Si c'est réduit en "+=": Si c'est un "+ 1", et que ce n'est pas dans une série de "+=" (ou <opérateur>= quelconque), réduire en ++.
Aussi, l'espacement du code est important. Pas à outrance, mais encadrer les opérateurs binaires par des espaces, et insérer des lignes vides entre des blocs d'instructions sans grand rapport. Donc entre les fonctions, mais aussi dans les fonctions ^^
Certains voudront même mettre plusieurs lignes vides, mais en général au delà de 2 c'est clairement abusif et ça diminue la lisibilité plus qu'autre chose. (deux c'est déjà limite...)