Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

adresse d'une variable volatile

1 réponse
Avatar
Vincent Lefevre
Juste pour être sûr, car ce comportement me semble bizarre...
L'adresse d'une variable volatile est censée être constante
(au sens &x == &x), non?

Parce que le programme suivant affiche "1 0" (au lieu du "1 1"
attendu) sous Mac OS X Tiger avec Xcode 2.4.1 (i.e. la dernière
version sous Tiger).

#include <stdio.h>

int main (void)
{
int i = 0;
volatile int j = 0;

printf ("%d %d\n", &i == &i, &j == &j);
return 0;
}

--
Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)

1 réponse

Avatar
Jean-Marc Bourguet
Vincent Lefevre <vincent+ writes:

Juste pour être sûr, car ce comportement me semble bizarre...
L'adresse d'une variable volatile est censée être constante
(au sens &x == &x), non?



Parce que le programme suivant affiche "1 0" (au lieu du "1 1"
attendu) sous Mac OS X Tiger avec Xcode 2.4.1 (i.e. la dernière
version sous Tiger).

#include <stdio.h>

int main (void)
{
int i = 0;
volatile int j = 0;

printf ("%d %dn", &i == &i, &j == &j);
return 0;
}



Pour moi c'est un bug sans hesitation.

A+

--
Jean-Marc
FAQ de fclc: http://www.levenez.com/lang/c/faq
Site de usenet-fr: http://www.usenet-fr.news.eu.org