Signification de -> en C

Résolu
cs_MikyMax Messages postés 1 Date d'inscription lundi 17 décembre 2007 Statut Membre Dernière intervention 17 décembre 2007 - 17 déc. 2007 à 20:56
cs_juju12 Messages postés 966 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 4 mars 2010 - 17 déc. 2007 à 21:12
Bonjour, je suis étudiant débutant dans la programmation en C.
Dans le cadre d'un projet je suis tombé sur ce signe ( -> ).

par exemple:
 
void appellu(matrice *A,matrice *L,matrice *U)

{

lu(A->ligne,A->composante,L->composante,U->composante);

}

Pourriez vous m'indiquer ce que ce signe fait dans ce programme?
Connaissez vous un équivalent?

merci d'avance

Mike

3 réponses

SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
17 déc. 2007 à 21:11
matrice est une structure.
A est un pointeur sur une structure matrice.
A->ligne on accède au membre ligne de la structure pointé par A.

Un équivalent ? Pourquoi faire ?
Oui il y a un équivalent mais ça donne simplement un code moins "propre":
(*A).ligne

C++ (@++)<!--
3
cs_juju12 Messages postés 966 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 4 mars 2010 4
17 déc. 2007 à 21:11
c'est l'accession aux membres d'une classe depuis un pointeur.
exemple:
struct A{int i};

A a;
A* p=&a;
// équivalents :
(*p).i=2;
p->i=2;
3
cs_juju12 Messages postés 966 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 4 mars 2010 4
17 déc. 2007 à 21:12
Ah désolé double emploi.
0
Rejoignez-nous