IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

que fait ce programme?


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Décembre 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 12
    Par défaut que fait ce programme?
    pour un examen on a eu la question suivante:

    que fait ce programme c?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    #include <stdio.h>
    #include <stdlib.h>
    main()
    {
    int i=3;
    int *p;
    printf("valeur de p avant initialisation = %ld\n",p);
    p=(int*)malloc(sizeof(int));
    printf("valeur de p apres initialisation = %ld\n",p);
    *p=i;
    printf("valeur de *p=%d\n", *p);
    }
    quelqu'un peut m'aider s'il vous plait??

    merci

  2. #2
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par minen
    pour un examen on a eu la question suivante:

    que fait ce programme c?
    Nice try...

    Met tes commentaires, et on les corrigera.

    (y'en a qui doutent de rien. Il faut cesser de nous prendre pour des idiots, OK ?)

  3. #3
    Membre habitué
    Inscrit en
    Décembre 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 12
    Par défaut
    (y'en a qui doutent de rien. Il faut cesser de nous prendre pour des idiots, OK ?)
    je suis desolée je ne comprends vraiment pas ce que vous voulez dire

    si j'avais trouvé une solution je ne serais pas là a vous casser la tete avec mon programme

    pour mon exercice j'ai laissé vide je l'ai pas fait

  4. #4
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Juste une question bête.

    Pourquoi tu compiles pas ton merveilleux code et tu l'executes non ?

  5. #5
    Membre habitué
    Inscrit en
    Décembre 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 12
    Par défaut
    j'ai essayé de le compiler deja mais ça n'a pas marché la compilation ne s'est pas bien terminé j'ai eu une erreur qui dit Unable to make output file c

  6. #6
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par minen
    j'ai essayé de le compiler deja mais ça n'a pas marché la compilation ne s'est pas bien terminé j'ai eu une erreur qui dit Unable to make output file c
    Ce code est loin d'être parfait, mais il compile à peu près et s'exécute tant bien que mal...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    valeur de p avant initialisation = 16384
    valeur de p apres initialisation = 4007040
    valeur de *p=3
     
    Press ENTER to continue.

  7. #7
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par minen
    si j'avais trouvé une solution je ne serais pas là a vous casser la tete avec mon programme
    Tu n'as vraiment aucune idée de ce que ça peut faire ? Tu dormais pendant le cours de C ou quoi ?

    Prend les lignes une par une et essaye de les commenter. C'est à toi de faire le travail. On te corrigera ou te guidera si nécessaire, mais on ne fera pas le travail à ta place.

  8. #8
    Membre habitué
    Inscrit en
    Décembre 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 12
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    #include <stdio.h>
    #include <stdlib.h>
    main()
    {
    int i=3;   /* i une variable de type entier initialisé a 3*/
    int *p;  /* pointeur sur entiers */
    printf("valeur de p avant initialisation = %ld\n",p); /*afficher la valeur de p avant intialisation*/
    p=(int*)malloc(sizeof(int)); /*allocation de memoire avec malloc qui retourne un pointeur */
    printf("valeur de p apres initialisation = %ld\n",p); /*afficher p apres initialisation*/
    *p=i;
    printf("valeur de *p=%d\n", *p);
    }
    je commence deja a comprendre que c'est des allocations d'espace memoire

  9. #9
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par minen
    je commence deja a comprendre que c'est des allocations d'espace memoire
    Je conseille de mettre les commentaires au-dessus de la ligne à commenter et de (bouton )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    #include <stdio.h>
    #include <stdlib.h>
    main()
    {
       /* i une variable de type entier initialisé a 3 
           -ed- OK */
       int i=3; 
     
       /* pointeur sur entiers 
          -ed- OK, mais on peut préciser 'non initialisé', 
                 ce qui est une source d'ennuis pour un pointeur...  */
       int *p; 
     
       /* afficher la valeur de p avant intialisation 
           -ed- OK, mais on peut préciser que la valeur étant indéfinie, le comportement est indéfini (la valeur ne peut pas être vérifiée).
       */
       printf("valeur de p avant initialisation = %ld\n",p); 
     
       /*allocation de memoire avec malloc qui retourne un pointeur 
          -ed- malloc() ne retourne pas un 'pointeur', mais une 'adresse'. 
          D'autre part, il serait intéressant de commenter la taille allouée
          et de monter à quoi elle correspond...
       */
       p=(int*)malloc(sizeof(int)); 
     
       /*afficher p apres initialisation
          -ed- OK
       */
       printf("valeur de p apres initialisation = %ld\n",p); 
     
       /* -ed- pas d'idee ? si p est un pointeur, que représente *p ? */
       *p=i;
       printf("valeur de *p=%d\n", *p);
    }
    Tu vois que si tu réfléchis 2 minutes, tu arrives à sortir quelque chose... pour ce qui manque, relis ton cours...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Que fait ce programme ( les structures?)
    Par autoin dans le forum Débuter
    Réponses: 4
    Dernier message: 04/04/2008, 21h36
  2. que fait ce programme java?
    Par freemasons dans le forum Langage
    Réponses: 5
    Dernier message: 17/01/2008, 16h45
  3. Que fait ce programme ?
    Par lebossejames dans le forum Assembleur
    Réponses: 3
    Dernier message: 08/03/2007, 05h32
  4. Que fait ce programme de matrices ?
    Par Premium dans le forum C
    Réponses: 10
    Dernier message: 28/07/2006, 23h00
  5. Que fait ce programme ?
    Par babar56 dans le forum C
    Réponses: 32
    Dernier message: 16/01/2006, 21h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo