Je n’ai pas la norme sous la main, mais dans mon souvenir de la norme C99, il est écrit qui NULL est défini comme (void*)0.
Les variables non initialisé sont initialisées à zéro. Donc c’est comme si on avait :
staticvoid(*Do)()=0;
Quand à l’adresse 0, on y trouve plein de chose... les vecteurs d’interruption en mode réel 8086 (ça date) ;-) de la flash sur mon projet actuel, un BAR PCI sur un ancien projet...
Je voudrais juste me coucher moins bête et comprendre, où dans la norme, il est indiqué qu’il y a un comportement indéfini dans ce cas là.
[^] # Re: Comportement indéfini ou incorrect ?
Posté par Anthony Jaguenaud . En réponse au journal Compilateur trop intelligent. Évalué à 2. Dernière modification le 02 novembre 2017 à 14:40.
Je n’ai pas la norme sous la main, mais dans mon souvenir de la norme C99, il est écrit qui NULL est défini comme
(void*)0.Les variables non initialisé sont initialisées à zéro. Donc c’est comme si on avait :
Quand à l’adresse 0, on y trouve plein de chose... les vecteurs d’interruption en mode réel 8086 (ça date) ;-) de la flash sur mon projet actuel, un BAR PCI sur un ancien projet...
Je voudrais juste me coucher moins bête et comprendre, où dans la norme, il est indiqué qu’il y a un comportement indéfini dans ce cas là.