Bonjour,
Tout ou presque est dans le titre.
Suite à une précédente discussion, j'ai découvert que la norme n1256 prévoyait des types qualifiés de 'fast' : int_fastN_t et uint_fastN_t. Ces types sont obligatoires. Ils sont décrits à la section 7.18.1.3 Fastest minimum-width integer types.
Si j'ai bien tout compris, créer un objet de type int_fast32_t nous donne un entier de largeur au moins égale à 32 bits et garanti comme étant le plus rapide sur l'architecture cible. Avec un processeur 64 bits, c'est donc normalement un entier de largeur 64 bits puisque c'est la taille naturelle de manipulation de données du processeur : http://www.linuxbase.org/navigator/b...y-id&Tid=16619
Je me demande pourquoi je découvre seulement maintenant l'existence de ce type... Pourquoi est-ce qu'on ne voit jamais ce type dans les cours de C, dans des codes sur ce forum ? Ne devrait-il pas être utiliser pour toutes les variables locales dés que l'occupation mémoire est peu critique, pour améliorer la vitesse ? Ne devrait-il pas simplifier le portage et l'efficacité du code ?
J'attends vos avis, commentaires, remarques, expériences,...
Merci d'avance !
Partager