begin process at 2010 02 10 02:31:49
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Pointeurs


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Pointeurs

samedi 11 octobre 2003 à 19:26:59 | Pointeurs

Nykkoo


Salut,

Etant debutant dans la programmation en C, j'arrive aux chapitres des pointeurs (sniff) et je me trouve confonté aux problemes suivants :

double ** pointeur;
est ce que cela signifie qu'un pointeur de type quelconque pointe sur un pointeur de type double?
quel en est l'interet?

ensuite je trouve :

void swap(double ** Val1, double**Val2)

peut on m'expliquer ce que cela signifie?
que vont recevoir les arguments de la fonction?
Merci d'avance
Nykoo

samedi 11 octobre 2003 à 19:39:31 | Re : Pointeurs

JCDjcd

double **pp

<pp> est un pointeur sur un pointeur sur un double.
le premier pointeur est "un pointeur sur double"
le second est "un pointeur sur pointeur"

En fait normalement ce n'est pas cet exemple que l'on prend, on n'utilise pas le pointeur sur pointeur.

swap(int *a,int *b)
{
int tmp; // temporaire
tmp = *a;
*a = *b;
*b = tmp;
}


voila un fonction utilisant les pointeurs. Et voila ton main :


int main(...)
{
...

// on suppose que c=10 et d=21
swap(&c,&d);
// maintenant c=21 et d=10


...
}




Cela marche que grace aux pointeurs
samedi 11 octobre 2003 à 19:46:19 | Re : Pointeurs

JCDjcd


http://www.cppfrance.com/code.aspx?ID=10571
samedi 11 octobre 2003 à 20:22:44 | Re : Pointeurs

Nykkoo

Re,

Merci pour ta aide.
Pour echanger des valeurs je pense avoir compris, cependant dans ce cas c'est un echange d'adresse, je te joins le prog au cas ou. La ou je bute, c'est le pointeur du pointeur...dans la fonction swap et dans l'init. Si tu as 30s pour m'eclairer merci bcp.


#include <stdio.h>
#include <stdlib.h>


void swapAdr (double ** pVal1, double ** pVal2);


int main()
{
double pi = 3.14;
double e = 2.7128;
double ** adpi;
double ** ade;
adpi = π
ade = &e;


printf ("avant : \n pi vaut %lf a l'adresse 0x%x \n e vaut %lf a l'adresse 0x%x \n", pi,*adpi,e ,*ade);
swapAdr(&adpi,&ade);

printf ("apres : \n pi vaut %lf a l'adresse 0x%x \n e vaut %lf a l'adresse 0x%x \n", pi,*adpi,e ,*ade);
return 0;


}

void swapAdr (double ** pVal1,double ** pVal2)

{

double * inter;

inter = *pVal1;
*pVal1 = * pVal2;
* pVal2= inter;

return ;
}
samedi 11 octobre 2003 à 20:52:55 | Re : Pointeurs

JCDjcd

C'est le meme principe :


Apres adpi est un pointeur sur le pointeur qui POINTAIT sur e
et reciproquement
Apres adpe est un pointeur sur le pointeur qui POINTAIT sur pi

ppPi -> pPi -> Pi //
ppE -> pE -> E // les -> representes les pointeurs

Apres coup :

ppPi -> pE ->E
ppE -> pPi -> Pi

Effectivement cela n'a pas un grand interet ici. Mais les pointeur sont PRIMORDIAL en langage C, c'est le plus important, c'est tellement puissant.


Cette discussion est classée dans : trouve, double, pointeurs, pointeur, signifie


Répondre à ce message

Sujets en rapport avec ce message

Pour assigner un pointeur ... [ par wismerhill__ ] Il me semblait que pour declarer un pointeur il fallait faire double* pointeur = NULL;Mais dans un cours de C++ et des codes, je vois des 0, Peut on d Pointeurs de pointeurs [ par miximog ] Bonjour a tous enfin bonsoir ;) Enfaîte j'ai lu 2 tuto sur les pointeurs donc je commence a bien comprendre la notion de pointeurs, mais il y a une n Problème pointeurs toujours pareils [ par Roro8883 ] Bonjour à tous, y'a un truc que je comprends pas à propos des pointeurs dans le code suivant :   int value = 33;   int* pvalue = &value;         // Af Utilisation d'un pointeur de fonction membre [ par cyrcocq ] Bonjour,J'ai déjà discuté de ça ailleurs, on m'a conseillé d'autres méthodes, mais imaginons une classe contenant un ensemble de fonction accessibles double pointeur ? [ par Arkko ] que signifi le ** dansCCamera **CameraList; jai bcp de difficulté avec les pointeurs lol les pointeurs en c [ par flofloo ] bonjour tout le monde,en faite je voudrais juste qu'on parle un peu des pointeurs en c car j'ai une petite zone d'ombre dessus je voudrais savoir a qu Fonction par pointeur [ par airness86180 ] Bonjour,je suis debutant en C/C++ mais a la lecture de mon cours, je ne comprends pas pourquoi ce code tout simple (surtout ne vous moquez pas , c pou A propos des pointeurs de fichier [ par dayvid75014 ] Bonjour,Je ne comprends pas pourquoi lorsque j'utilise un pointeur de fichier en dehors du main, cela me renvoie une erreur, comme si j'accédais à des probleme de pointeur avec SDL_Rect [ par Jackyzgood ] Bonjour à tous !Je n'ai aucun soucis quand j'utilise des pointeurs sur des variables, ou sur des tableaux, mais je n'arrive pas à utiliser les pointeu pointeur de la matrice [ par ciaonataha ] Bojour a tous...Comment je peux definir la matrice dans le int main(){}si, j'utilise dans les functions double **a...par exemple j'ai definit la matri


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 6,224 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales