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 :

utilisation de cin


Sujet :

C++

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 75
    Points : 43
    Points
    43
    Par défaut utilisation de cin
    Bonjour,

    Peut on appliquer un cin sur un tableau de pointeurs int ?

    exemple
    int * tab[10];

    cin >> *tab[i];

    j ai essaye comme cela mais j ai une erreur de segmentation !!

    merci d avance

    debloc

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 373
    Points : 23 629
    Points
    23 629
    Par défaut
    Hello,

    Essaie « cin >> tab[i] » sans l'étoile.

    Bon courage.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 75
    Points : 43
    Points
    43
    Par défaut re:compilation
    Merci pour la reponse.

    J ai le meme probleme avec cin >> tab[i].

    je ne sais pas si cin est definie pour un type pointeur de ce type.

    debloc

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 39
    Points : 24
    Points
    24
    Par défaut
    Pourquoi tu déclare un int * tab[10]; il te suffit de déclarer un int[10] ou alors un int* et tu fait un new/malloc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        int tab[10];
     
     
        std::cin >> tab[0];
        std::cout<< tab[0];

  5. #5
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Salut,
    int * tab[10]; tu déclares un tableau de pointeur... mais les pointeurs ne sont pas alloués. Donc quand tu écris cin >> *tab[i], tu déréférences une adresse invalide d'où ton erreur de segmentation.
    Utiliser new (malloc en C++, c'est ) pourrait être une tentation ... mais pourquoi utiliser des pointeurs ???
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    int tab[10];
    std::cin>>tab[0];
    Mais les tableaux, c'est pas comme ça en C++. Préfères std::vector :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    std::vector<int> tab(10);
    std::cin>>tab[0];

Discussions similaires

  1. [débutant]problème à l'utilisation de cin et cout
    Par Damien B. dans le forum SL & STL
    Réponses: 6
    Dernier message: 07/05/2007, 19h23
  2. comment utiliser cin.get (c)
    Par peneloppe dans le forum SL & STL
    Réponses: 5
    Dernier message: 03/11/2006, 17h31
  3. Utilisation de "Cin" en VC++
    Par kabil.cpp dans le forum Visual C++
    Réponses: 3
    Dernier message: 22/05/2006, 10h33
  4. Utilisation de "Cin" en VC++
    Par kabil.cpp dans le forum MFC
    Réponses: 0
    Dernier message: 22/05/2006, 10h02
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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