Tout sur la programmation
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Tout sur la programmation

programmation de tous les languages
 
AccueilPortailRechercherDernières imagesS'enregistrerConnexion
Le Deal du moment :
Cdiscount : -30€ dès 300€ ...
Voir le deal

 

 [75] pointeur et adresse (& et *)

Aller en bas 
4 participants
Aller à la page : 1, 2  Suivant
AuteurMessage
Black Templar
Admin
Admin
Black Templar


Nombre de messages : 356
Age : 35
Localisation : Lille (France)
language de prog : Liberty BASIC; HTML; CSS; php; MySQL; C
expérience en prog : Amateur
Date d'inscription : 06/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptySam 27 Aoû - 10:41

Dans cet exercice, de niveau facile quand on a comprit, vous devrez créer une variable dans la fonction secondaire, envoyer son adresse dans la fonction principale et modifier son contenue grâce à un pointeur.

(dans cette exercice, on ne manipule pas des variables, mais on touche à son emplacement dans la mémoire de l'ordi)

Exo de Mike (plus d'un an plus tard... lol)
Code:

#include <iostream>
using namespace std;
void fonctionQuiSertARienSaufAChangerLaVariableA(int *pointeurA);//je crée une fonction (ici c'est un prototye) qui à comme paramètre un pointeur
int main()
{
    int a = 5;//je créer la variable que je devrai changer
   cout << "Voila l'exo sur les pointeurs. C'est un petit programme qui ne sert absolument a rien." << endl;
   cout << "Valeur de \"a\" avant la fonction-->" << a << endl;
   fonctionQuiSertARienSaufAChangerLaVariableA(&a);//je met l'adresse de a dans le paramètre (qui est un pointeur) de ma fonction
    cout << "Valeur de \"a\" apres la fonction-->" << a << endl;
    cout << "J'ai donc appeler ma fonction, et grace au pointeur, j'ai modifier la valeur de \"a\" de la fonction." << endl;
   return 0;
}
void fonctionQuiSertARienSaufAChangerLaVariableA(int *pointeurA)//voici la fonction en question. Pour les besoin de la cause, elle est de type void.
{
    *pointeurA = 10;//je modifie la valeur de la variable sur laquelle pointe mon pointeur (soit a)
}

Revenir en haut Aller en bas
http://membres.multimania.fr/templar59
Mike
Admin
Admin
Mike


Nombre de messages : 724
Age : 32
Localisation : Canada, Québec Montréal
language de prog : LB, GM, C++, XHTML, CSS, PHP
expérience en prog : 1 ans d'expérience
Date d'inscription : 21/07/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptySam 27 Aoû - 10:49

Pourait tu donner des précision comme: Quel commande on utilise.
Le nombre de ligne (environ). La date de remise.
Revenir en haut Aller en bas
https://info-programmation.forumactif.com/
Black Templar
Admin
Admin
Black Templar


Nombre de messages : 356
Age : 35
Localisation : Lille (France)
language de prog : Liberty BASIC; HTML; CSS; php; MySQL; C
expérience en prog : Amateur
Date d'inscription : 06/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptySam 27 Aoû - 10:59

alors:
&nVariable donne l'adresse de la variable nVariable.

Si nVariable2 contient une adresse, *nVariable2 pointe vers l'adresse.

Pour le nb de ligne, 15 maxi sans compter les accolades et l'entète (#include)

et la date : avant le 3 septembre
Revenir en haut Aller en bas
http://membres.multimania.fr/templar59
Mike
Admin
Admin
Mike


Nombre de messages : 724
Age : 32
Localisation : Canada, Québec Montréal
language de prog : LB, GM, C++, XHTML, CSS, PHP
expérience en prog : 1 ans d'expérience
Date d'inscription : 21/07/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptySam 27 Aoû - 11:06

mais ça ne nous dit pas quel commande, fonction, et ou autre a pratiqué dans l'exo (puisqu'e chaque exo sert a pratiquer deux (ou plus) commande précise)
Revenir en haut Aller en bas
https://info-programmation.forumactif.com/
Exedor
programmeur intensif
programmeur intensif
Exedor


Nombre de messages : 304
language de prog : Commence juste d'apprendre le C++
expérience en prog : Passé pas Liberty Basic et blitz basic sans m'arréter.
Date d'inscription : 19/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyDim 28 Aoû - 3:13

Je vais peut être le faire (a partir de lundi) si j'ai le temps.
Revenir en haut Aller en bas
http://fanasdharrypotter.free.fr
Black Templar
Admin
Admin
Black Templar


Nombre de messages : 356
Age : 35
Localisation : Lille (France)
language de prog : Liberty BASIC; HTML; CSS; php; MySQL; C
expérience en prog : Amateur
Date d'inscription : 06/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyDim 28 Aoû - 4:27

ok pour Exedor. Si t'as pas le temps (Pour Mike, c'est pareil), je ralongerais les délais.

Pour Mike, ce qu'on doit manipuler ici sont les adresse de variable "&" et les pointeur * (si vous ne savez pas faire de fonction, vous pouvez mz le rendre sans)

voici ce que donne une fonction
Code:

Type_de_renvoi nom_de_la_fonction(variable_recu)
{
[list]//Code de la fonction[/list]
[list]return nom_de_la_variable;
}

Les fonctions se place avant la fonction main()
ici, le type de renvoi est par example int, char, double selon le type de variable renvoyé à main()
variable recu est la variable envoyé par main
Si vousez "void"

[/list]
Revenir en haut Aller en bas
http://membres.multimania.fr/templar59
Mike
Admin
Admin
Mike


Nombre de messages : 724
Age : 32
Localisation : Canada, Québec Montréal
language de prog : LB, GM, C++, XHTML, CSS, PHP
expérience en prog : 1 ans d'expérience
Date d'inscription : 21/07/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyDim 28 Aoû - 11:43

mais on utilise quel commande???

Comme dans le premier éxo, c'est cout et cin...
Donc, c'est quoi?????
Tu nous dit quoi faire, mais tu dit pas comment...
Revenir en haut Aller en bas
https://info-programmation.forumactif.com/
Exedor
programmeur intensif
programmeur intensif
Exedor


Nombre de messages : 304
language de prog : Commence juste d'apprendre le C++
expérience en prog : Passé pas Liberty Basic et blitz basic sans m'arréter.
Date d'inscription : 19/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyDim 28 Aoû - 15:36

il n'y a pas vraiment de comandes pour les pointeurs, il y a juste une méthode spéciale. Va voir là : http://www.cppfrance.com/code.aspx?ID=26541
Il y a un tuto qui t'expliquera tout ce que tu veut savoir sur les pointeurs.
sinon, y a un truc que je comprend pas. C'est cette histoire de fonction principale et secondaire. a part sa, je pourrai faire cet exercice.
Revenir en haut Aller en bas
http://fanasdharrypotter.free.fr
Mike
Admin
Admin
Mike


Nombre de messages : 724
Age : 32
Localisation : Canada, Québec Montréal
language de prog : LB, GM, C++, XHTML, CSS, PHP
expérience en prog : 1 ans d'expérience
Date d'inscription : 21/07/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyDim 28 Aoû - 18:41

As-tu déjà utiliser just basic???
Si oui, et bien, tu pouvait créer une fonction. Qui était en fait, un nom comme:
Code:
int mul(a,b)
puis ensuite, tu met le code qui est effectué quand tu appel cette fonction.

Tu mais la fonction avant le int main()
Voila.

Merci pour le tuto.
Sinon, il faudrait que tu repousse en effet la date, parce que je recommance l'école... Donc, plus au alentour de quand tu auras reçu l'exo de moi et d'exedor...
Revenir en haut Aller en bas
https://info-programmation.forumactif.com/
Black Templar
Admin
Admin
Black Templar


Nombre de messages : 356
Age : 35
Localisation : Lille (France)
language de prog : Liberty BASIC; HTML; CSS; php; MySQL; C
expérience en prog : Amateur
Date d'inscription : 06/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyLun 29 Aoû - 8:08

ok, j'afficherai les réponses quand Mike et Exedor me l'auront rendu (Mais si je dois attendre quelqu'un d'autre, n'hésité pas à me le dire)
Revenir en haut Aller en bas
http://membres.multimania.fr/templar59
Exedor
programmeur intensif
programmeur intensif
Exedor


Nombre de messages : 304
language de prog : Commence juste d'apprendre le C++
expérience en prog : Passé pas Liberty Basic et blitz basic sans m'arréter.
Date d'inscription : 19/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyLun 29 Aoû - 8:32

hé c'est quoi le truc de la fonction primaire et secondaire?
Revenir en haut Aller en bas
http://fanasdharrypotter.free.fr
Black Templar
Admin
Admin
Black Templar


Nombre de messages : 356
Age : 35
Localisation : Lille (France)
language de prog : Liberty BASIC; HTML; CSS; php; MySQL; C
expérience en prog : Amateur
Date d'inscription : 06/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyLun 29 Aoû - 8:37

Ba, en haut de ton prgm, il y a des fichier #include. Ces fichiers apellent des programmes qui configures le tien puis, ils apellent la fonctions main(). C'est cette fonction qui est nomé principale.
Ensuite, de main(), tu peux apeller d'autres fonctions qui seront tous secondaires. Ces fonctions, tu les places avant la fonction main()

(J'espère que j'ai bien espliqué... )
Revenir en haut Aller en bas
http://membres.multimania.fr/templar59
Exedor
programmeur intensif
programmeur intensif
Exedor


Nombre de messages : 304
language de prog : Commence juste d'apprendre le C++
expérience en prog : Passé pas Liberty Basic et blitz basic sans m'arréter.
Date d'inscription : 19/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyLun 29 Aoû - 8:38

Sa je le sait mais comme main est executée avant, c'est possible d'utiliser une valeur qui est définie dans la fonction secondaire !?
Revenir en haut Aller en bas
http://fanasdharrypotter.free.fr
Mike
Admin
Admin
Mike


Nombre de messages : 724
Age : 32
Localisation : Canada, Québec Montréal
language de prog : LB, GM, C++, XHTML, CSS, PHP
expérience en prog : 1 ans d'expérience
Date d'inscription : 21/07/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyLun 29 Aoû - 8:47

si c'était une question, la réponse est oui (si j'ai bien compris ce que tu posait)
Revenir en haut Aller en bas
https://info-programmation.forumactif.com/
Black Templar
Admin
Admin
Black Templar


Nombre de messages : 356
Age : 35
Localisation : Lille (France)
language de prog : Liberty BASIC; HTML; CSS; php; MySQL; C
expérience en prog : Amateur
Date d'inscription : 06/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyLun 29 Aoû - 8:47

oui, il faut appeller la fonction.
ex:
Code:
#include <cstdio>
#include <cstdlib>
#include <iostream>
using namespace std;

int uneFonction ()
{
    int Var2 = 10;
    return Var2;
}

int main(int nNumbreofArgs, char* pszArgs[])
{
    int Var1 = 5;
    cout <<"Var1 = " <<Var1;
    cout <<"\nApelle la fonction uneFonction()";
    Var1 = uneFonction();
    cout <<"\nFin de la Fonction";
    cout <<"\nVar1 = " <<Var1 <<"\n";
    system("PAUSE");
    return 0;
}

Revenir en haut Aller en bas
http://membres.multimania.fr/templar59
Exedor
programmeur intensif
programmeur intensif
Exedor


Nombre de messages : 304
language de prog : Commence juste d'apprendre le C++
expérience en prog : Passé pas Liberty Basic et blitz basic sans m'arréter.
Date d'inscription : 19/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyLun 29 Aoû - 8:50

Ok merci, je vais me lancer dans l'exo
Revenir en haut Aller en bas
http://fanasdharrypotter.free.fr
Exedor
programmeur intensif
programmeur intensif
Exedor


Nombre de messages : 304
language de prog : Commence juste d'apprendre le C++
expérience en prog : Passé pas Liberty Basic et blitz basic sans m'arréter.
Date d'inscription : 19/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyMar 30 Aoû - 15:51

Sa y est j'ai fini, je paufine un peu tout sa et je t'envoie mon code.
Revenir en haut Aller en bas
http://fanasdharrypotter.free.fr
Exedor
programmeur intensif
programmeur intensif
Exedor


Nombre de messages : 304
language de prog : Commence juste d'apprendre le C++
expérience en prog : Passé pas Liberty Basic et blitz basic sans m'arréter.
Date d'inscription : 19/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyMar 30 Aoû - 16:19

argg je retire, en fait, je faisait tout dans la fonction principale. Black, tu a donné un exemple pour omment récuperer un chiffre de la variable secondaire, mais je n'ai pas réussit a me servir de ton exemple pour l'adresse (nefin, si mais sa affiche seulement (enfin si mais sa affiche l'adresse de la variable de la fonction secondaire mais, impossible de la modifier dans la fonction main.
Désolé si c'est évident mais bon...
Revenir en haut Aller en bas
http://fanasdharrypotter.free.fr
Mike
Admin
Admin
Mike


Nombre de messages : 724
Age : 32
Localisation : Canada, Québec Montréal
language de prog : LB, GM, C++, XHTML, CSS, PHP
expérience en prog : 1 ans d'expérience
Date d'inscription : 21/07/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyMar 30 Aoû - 16:49

Et moi, j'ai commencé a étudier le spointeurs, et fait quelques autres exemples...
Revenir en haut Aller en bas
https://info-programmation.forumactif.com/
Black Templar
Admin
Admin
Black Templar


Nombre de messages : 356
Age : 35
Localisation : Lille (France)
language de prog : Liberty BASIC; HTML; CSS; php; MySQL; C
expérience en prog : Amateur
Date d'inscription : 06/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyMer 31 Aoû - 3:34

Une petite précision, une variable a une "porté". Si elle est déclaré dans une fonction secondaire, sa porté n'est valable que dans cette fonctions, autrement dit, elle n'est plus valable dans main()

Donc pour récupérer la variable dans main(), il faut la déclaré dans main.

ex:
Code:

fonction()
{
a = 10
}
main()
{
int a = 5
fonction()
}


dans cette exemple, la variable a sera égale à 5 à la fin du prgm. (en fait, elle commence à 5, se transforme en 10 dans fonction() puis retourne à 5 de retour à main.

Voila pourquoi les pointeurs sont si important, ils ne transforme pas une variable, mais manipule directement l'adresse dans la mem. donc, plus de barrière !!
Revenir en haut Aller en bas
http://membres.multimania.fr/templar59
Mike
Admin
Admin
Mike


Nombre de messages : 724
Age : 32
Localisation : Canada, Québec Montréal
language de prog : LB, GM, C++, XHTML, CSS, PHP
expérience en prog : 1 ans d'expérience
Date d'inscription : 21/07/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyMer 31 Aoû - 8:25

Merci black. Donc, on peut déclarer la valeur d'une var dans une fonction secondaire et grasse a un pointeur, on peut ravoir sa valeur, sa la redéclarer dans main... (c'est ça qu'il faut faire.)?
Revenir en haut Aller en bas
https://info-programmation.forumactif.com/
Exedor
programmeur intensif
programmeur intensif
Exedor


Nombre de messages : 304
language de prog : Commence juste d'apprendre le C++
expérience en prog : Passé pas Liberty Basic et blitz basic sans m'arréter.
Date d'inscription : 19/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyVen 2 Sep - 15:02

Je cherche toujour activement et vainement ce qu'il faut faire, mais je ne pense pas le rendre a temps, d'autant que revoila le collège avec un super emploi du temps (je fait grec en ème langue morte)
Revenir en haut Aller en bas
http://fanasdharrypotter.free.fr
Mike
Admin
Admin
Mike


Nombre de messages : 724
Age : 32
Localisation : Canada, Québec Montréal
language de prog : LB, GM, C++, XHTML, CSS, PHP
expérience en prog : 1 ans d'expérience
Date d'inscription : 21/07/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptyVen 2 Sep - 16:04

C'est sur que ut va le remmettre a temps, puisqu'il ne fait qu'attendre que nous lui ayons remis l'éxo, avant des diffuser les résultat...
Revenir en haut Aller en bas
https://info-programmation.forumactif.com/
Exedor
programmeur intensif
programmeur intensif
Exedor


Nombre de messages : 304
language de prog : Commence juste d'apprendre le C++
expérience en prog : Passé pas Liberty Basic et blitz basic sans m'arréter.
Date d'inscription : 19/08/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptySam 3 Sep - 3:10

Ha oui ok lol.
Revenir en haut Aller en bas
http://fanasdharrypotter.free.fr
Mike
Admin
Admin
Mike


Nombre de messages : 724
Age : 32
Localisation : Canada, Québec Montréal
language de prog : LB, GM, C++, XHTML, CSS, PHP
expérience en prog : 1 ans d'expérience
Date d'inscription : 21/07/2005

[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) EmptySam 3 Sep - 9:44

lol!!

Pis moi, j'ai même pas encore commencer... Je suis encore en train d'étudier...
Revenir en haut Aller en bas
https://info-programmation.forumactif.com/
Contenu sponsorisé





[75] pointeur et adresse (& et *) Empty
MessageSujet: Re: [75] pointeur et adresse (& et *)   [75] pointeur et adresse (& et *) Empty

Revenir en haut Aller en bas
 
[75] pointeur et adresse (& et *)
Revenir en haut 
Page 1 sur 2Aller à la page : 1, 2  Suivant

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Tout sur la programmation :: Programmation :: C ou C++ :: Éxercices sur le C et C++-
Sauter vers: