• [^] # Re: Comportement indéfini ou incorrect ?

    Posté par . En réponse au journal Compilateur trop intelligent. Évalué à 3. Dernière modification le 02 novembre 2017 à 21:08.

    Effectivement, le pointeur n'est pas initialisé, enfin... pas toujours

    En fait, le pointeur n'est probablement pas initialisé, quand il existe.
    L'optimisation a probablement réduit l'instruction à:

    #include <iostream>
    int main(void) {
     std::cout << 0 << "\n" ;
     return 0;
    }

    Par non défini, il faut comprendre «non défini par la norme». Le compilateur, lui, va suivre ses propres règles, qui peuvent varier d'une cible à l'autre.

    On en a déjà causé dans cet autre journal.