Je me pose une petite question =AB simple =BB depuis un moment. Dans le cod=
e suivant :
int i =3D 0;
int *p =3D &i;
i et p d=E9signent des objets, mais s'agit-il pour autant de lvalues ? Dans=
un cas comme dans l'autre, vous serait-il possible de me dire o=F9 l'on pe=
ut trouver la r=E9ponse dans la norme C ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Stephane Legras-Decussy
Le 31/07/2012 11:33, Taurre a écrit :
Bonjour à tous,
Je me pose une petite question « simple » depuis un moment. Dans le code suivant :
int i = 0; int *p =&i;
i et p désignent des objets, mais s'agit-il pour autant de lvalues ? Dans un cas comme dans l'autre, vous serait-il possible de me dire où l'on peut trouver la réponse dans la norme C ?
hum... à ma connaissance une lvalue est tout simplement un "truc" qu'on peut écrire à gauche d'un the term on the left hand side of an assignment.
donc oui i et p sont des lvalue.
Le 31/07/2012 11:33, Taurre a écrit :
Bonjour à tous,
Je me pose une petite question « simple » depuis un moment. Dans le code suivant :
int i = 0;
int *p =&i;
i et p désignent des objets, mais s'agit-il pour autant de lvalues ? Dans un cas
comme dans l'autre, vous serait-il possible de me dire où l'on peut trouver
la réponse dans la norme C ?
hum... à ma connaissance une lvalue est tout simplement un "truc" qu'on
peut écrire à gauche d'un
the term on the left hand side of an assignment.
Je me pose une petite question « simple » depuis un moment. Dans le code suivant :
int i = 0; int *p =&i;
i et p désignent des objets, mais s'agit-il pour autant de lvalues ? Dans un cas comme dans l'autre, vous serait-il possible de me dire où l'on peut trouver la réponse dans la norme C ?
hum... à ma connaissance une lvalue est tout simplement un "truc" qu'on peut écrire à gauche d'un the term on the left hand side of an assignment.
donc oui i et p sont des lvalue.
Jean-Marc Bourguet
Taurre writes:
Bonjour à tous,
Je me pose une petite question « simple » depuis un moment. Dan s le code suivant :
An lvalue is an expression (with an object type other than void) that potentially designates an object.
i dans la premiere ligne et p dans la deuxieme ne sont pas des expressions, donc la question ne se pose pas pour eux. Dans la deuxieme, oui i est une lvalue.
Si maintenant tu parles d'un i et d'un p qui designerait ces definitions, oui ce sont des lvalues. Tout comme *p d'ailleurs (meme si p est NULL, c'est une propriete statique qui ne depend pas des valeurs en presence).
A+
-- Jean-Marc FAQ de fclc: http://www.levenez.com/lang/c/faq Site de usenet-fr: http://www.usenet-fr.news.eu.org
Taurre <jerome.frgacic@yahoo.fr> writes:
Bonjour à tous,
Je me pose une petite question « simple » depuis un moment. Dan s le code suivant :
An lvalue is an expression (with an object type other than void) that
potentially designates an object.
i dans la premiere ligne et p dans la deuxieme ne sont pas des
expressions, donc la question ne se pose pas pour eux. Dans la deuxieme,
oui i est une lvalue.
Si maintenant tu parles d'un i et d'un p qui designerait ces
definitions, oui ce sont des lvalues. Tout comme *p d'ailleurs (meme si
p est NULL, c'est une propriete statique qui ne depend pas des valeurs
en presence).
A+
--
Jean-Marc
FAQ de fclc: http://www.levenez.com/lang/c/faq
Site de usenet-fr: http://www.usenet-fr.news.eu.org
An lvalue is an expression (with an object type other than void) that potentially designates an object.
i dans la premiere ligne et p dans la deuxieme ne sont pas des expressions, donc la question ne se pose pas pour eux. Dans la deuxieme, oui i est une lvalue.
Si maintenant tu parles d'un i et d'un p qui designerait ces definitions, oui ce sont des lvalues. Tout comme *p d'ailleurs (meme si p est NULL, c'est une propriete statique qui ne depend pas des valeurs en presence).
A+
-- Jean-Marc FAQ de fclc: http://www.levenez.com/lang/c/faq Site de usenet-fr: http://www.usenet-fr.news.eu.org
*p est une lvalue, meme si *p = 42 est rejete par le compilateur.
-- Jean-Marc FAQ de fclc: http://www.levenez.com/lang/c/faq Site de usenet-fr: http://www.usenet-fr.news.eu.org
jerome.frgacic
Le mardi 31 juillet 2012 15:09:04 UTC+2, Jean-Marc Bourguet a écrit :
6.3.2.1/1
An lvalue is an expression (with an object type other than void) that potentially designates an object.
i dans la premiere ligne et p dans la deuxieme ne sont pas des expressions, donc la question ne se pose pas pour eux. Dans la deuxieme, oui i est une lvalue.
Si maintenant tu parles d'un i et d'un p qui designerait ce definitions, oui ce sont des lvalues. Tout comme *p d'ailleurs (meme si p est NULL, c'est une propriete statique qui ne depend pas des valeurs en presence).
A+
-- Jean-Marc FAQ de fclc: http://www.levenez.com/lang/c/faq Site de usenet-fr: http://www.usenet-fr.news.eu.org
Merci pour cette réponse claire et rapide ; voilà qui répond parfaite ment à mon interrogation :)
Le mardi 31 juillet 2012 15:09:04 UTC+2, Jean-Marc Bourguet a écrit :
6.3.2.1/1
An lvalue is an expression (with an object type other than void) that
potentially designates an object.
i dans la premiere ligne et p dans la deuxieme ne sont pas des
expressions, donc la question ne se pose pas pour eux. Dans la deuxieme,
oui i est une lvalue.
Si maintenant tu parles d'un i et d'un p qui designerait ce
definitions, oui ce sont des lvalues. Tout comme *p d'ailleurs (meme si
p est NULL, c'est une propriete statique qui ne depend pas des valeurs
en presence).
A+
--
Jean-Marc
FAQ de fclc: http://www.levenez.com/lang/c/faq
Site de usenet-fr: http://www.usenet-fr.news.eu.org
Merci pour cette réponse claire et rapide ; voilà qui répond parfaite ment à mon interrogation :)
Le mardi 31 juillet 2012 15:09:04 UTC+2, Jean-Marc Bourguet a écrit :
6.3.2.1/1
An lvalue is an expression (with an object type other than void) that potentially designates an object.
i dans la premiere ligne et p dans la deuxieme ne sont pas des expressions, donc la question ne se pose pas pour eux. Dans la deuxieme, oui i est une lvalue.
Si maintenant tu parles d'un i et d'un p qui designerait ce definitions, oui ce sont des lvalues. Tout comme *p d'ailleurs (meme si p est NULL, c'est une propriete statique qui ne depend pas des valeurs en presence).
A+
-- Jean-Marc FAQ de fclc: http://www.levenez.com/lang/c/faq Site de usenet-fr: http://www.usenet-fr.news.eu.org
Merci pour cette réponse claire et rapide ; voilà qui répond parfaite ment à mon interrogation :)