Accueil > Forum > > > > Debutant - Pointeurs
Debutant - Pointeurs
lundi 12 septembre 2005 à 15:53:23 |
Debutant - Pointeurs

DeltaX
|
Bonjour. Je débute en programmation(je commence par le C) et, et même si je sais à peu près comment ils fonctionnent(déclaration...), j'ai du mal à voir à quoi peuvent bien servir les pointeurs  Quelqu'un peut-il me montrer, dans son explication, un exemple qui montre clairement ce que les pointeurs font? Il parait d'ailleurs qu'ils sont plutôt importants alors j'aimerais bien comprendre quand il faut les utilier. 
|
|
lundi 12 septembre 2005 à 16:15:39 |
Re : Debutant - Pointeurs

buno
|
Réponse acceptée !
Le pointeur "pointe" (comme son nom l'indique) sur une case mémoire. ça te permet donc d'avoir accès à cette case assez rapidement. C'est très utile dans le cas de passage de paramètres d'une fonction, notamment dans le cas de paramètres "volumineux".
Un exemple: tu travailles sur des images (tableau à 2 dimensions) de 1024x1024. Dans la fonction CalculRouge(), tu dois compter le nombre de pixels rouges. tu as donc, en schématisant, 2 prototypes possibles: CalculRouge(Matrice Image); --> Une copie de la matrice est passée à la fonction, donc il y a 1024x1024x3 éléments à copier CalculRouge(Matrice * Image); --> Seul le pointeur de début de matrice est passé, tu as donc gagné du temps et de l'espace mémoire
J'espère que cet exemple t'a éclairé...
Buno ---------------------------------------- L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
|
|
lundi 12 septembre 2005 à 16:16:41 |
Re : Debutant - Pointeurs

BruNews
|
void ChangeAparB(char *psz) { char *c = psz; while(*c) { if(*c == 'A') *c = 'B'; c++; } }
Un pointeur référence une adresse, on peut donc accéder à la mémoire avec un pointeur et modifier ce qui s'y trouve.
ciao... BruNews, MVP VC++
|
|
lundi 12 septembre 2005 à 17:11:44 |
Re : Debutant - Pointeurs

DeltaX
|
Merci. Donc le pointeur ne sert "que" là où il y a nécessité d'aller plus vite-il doit y avoir de nombreux cas où cela est nécessaire, ne nous méprenons pas ce n'est pas ce que je veux dire..-? Il sert pour accélérer le déroulement du programme et diminuer le nombre de calculs effectués par le processeur? Donc, un programme peut se passer entièrement de pointeurs, au risque d'être bien plus lent qu'une version où presque chaque variable sera appelée par un pointeur pointant au début de l'espace mémoire alloué à cette variable? 
|
|
lundi 12 septembre 2005 à 17:32:49 |
Re : Debutant - Pointeurs

BruNews
|
absolument non, un pointeur est valable si on doit recevoir l'adresse mais pas dans les autres cas sinon on doit déréférencer pour obtenir la valeur et alors perte de cycles pour rien.
ciao... BruNews, MVP VC++
|
|
lundi 12 septembre 2005 à 17:42:04 |
Re : Debutant - Pointeurs

DeltaX
|
Alors là, BruNews, pour le coup, c'est allé très vite! tu parle de déréférencement et de cycle quand je je sais pas du tout(mais alors pas du tout...) de quoi il s'agit... Plus de présicison peut-être, c'était pas très clair... Je t'en remercierai.
|
|
lundi 12 septembre 2005 à 17:57:25 |
Re : Debutant - Pointeurs

BruNews
|
int maMultipliPar5(int v) { return (v * 5); }
ici (pas très utile mais simple exemple) si on passait un pointeur, serait: return (*v * 5);
faudrait lire le pointeur sur pile comme tout param et ensuite relire ce qui est pointé à cette adresse, 2 accès mémoire au lieu d'1 seul.
ciao... BruNews, MVP VC++
|
|
Cette discussion est classée dans : debutant, pointeurs
Répondre à ce message
Sujets en rapport avec ce message
c++ pointeur pour debutant [ par blastmanu ]
Bonjour a tous et a toutes !!!Voila je debute dans la programmation et en particulier C++ et je galere un peu avec les pointeurs, l
Classe C++ et pointeurs [ par cybermax62 ]
je veux utiliser des pointeurs sur des classes. j'écris mon code comme celui-ci :typedef class widget * pwidget;class widget{public:; char * name_s;
classes et opérations sur des pointeurs [ par cybermax62 ]
j'utilise dans un code plusieurs types de pointeurs. je les utilise tous dans différentes classes C++,qui apellent des fonctions et classes. bref, le
Info sur les pointeurs [ par HCJarod ]
slt, je me demande pourquoi on ne peut pas ecrire (ou c'est mon compilo qui merde)char tab[50];....tab++alors qu'avecchar* tab=new char[50]; oui.techn
debutant [ par 974Mr_007 ]
salutje suis debutant et je voulais savoir si vous avez un tuto pour debuter en c++.netmerci davance++Ey@Z
pointeurs de tableau [ par _Jonathan ]
salut a tousje cherche a lire dans un fichier (sa, sa va...) chaques lignes et les stocker dans un tableau.ex : *Tableau[];.........printf("texte 1 :
pb pointeurs [ par Arnaud16022 ]
bonsoirj'ai un peu de mal avec les pointeurs et ma fonction marche pas trop.Le but est de passer une variable en parametre a une fonction, qui va stoc
debutant en openGL... [ par dletozeun ]
bonjour,J'ai remarqué qu'avec opengl on peut deplacer le repere avec glTranslatef() ce qui est tres pratique....Mais j'ai remarqué aussi qu'avec glRot
question de debutant [ par Kernel ]
SalutlpBuffers est un pointeur sur un tableau de structures chacune de ces structures contient un pointeur sur un buffer et la longueur de ce buffeurl
Remplir tableau d'enters (debutant) [ par kanagan ]
Bonjour,alors voilà j'ai une petite fonction qui convertit un nombre base 10 en un nombre base 2 et qui m'affiche ce résultat par un printf.Seulement
Livres en rapport
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
RE : WIN APIRE : WIN API par racpp
Cliquez pour lire la suite par racpp WIN APIWIN API par omarino_007
Cliquez pour lire la suite par omarino_007
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|