• [^] # Re: volatile ?

    Posté par (site web personnel) . En réponse au journal C23: un memset_explicit() qui carbure. Évalué à 3. Dernière modification le 21 janvier 2025 à 10:50.

    Exact David !
    D'ailleurs, et sans rapport direct... au début, la fin du code ressemblait à ça :

     puts("Your password is still in memory... Inspect it now! (press any key...)");
     getchar();
     memset(password, 0, 16);
     puts("Your password is now cleared! (press any key...)");
     getchar();
     return 0; 
    }
    

    C'est-à-dire qu'il y avait une séquence "puts()/getchar()" supplémentaire entre le memset() et le return final.
    Eh bien dans ce cas-là... le compilateur n'optimise pas non plus ! Car il s'agit de fonctions d'I/O et il considère que ça peut interférer avec les buffers -;). (dit autrement : c'est sensible !)