C++ pointeur char ,cin et cout

Fermé
jango - 28 mai 2007 à 11:58
 blblb - 4 oct. 2008 à 23:43
bonjour je suis en train d'apprendre le c++ mais je me retrouve face à un petit probleme et je souhaiterai un petit peu d'aide merci:
voila mon programme:


#include <cstdlib>
#include <iostream>
#include <stdio.h>


using namespace std;

int main(int argc, char *argv[])
{

char *bob;
cin>>bob;


system("PAUSE");
return EXIT_SUCCESS;
}

en fait lorsque j'utilise scanf a la place de cin tout fonctionne correctement mais ici le programme plante quand j'utilise cin..Pouvez vous me renseigner sur l'origine de ce probleme..merci
A voir également:

8 réponses

c est du c ou du c++
car si c'est du c++
il faut pas
#include <stdio.h> 
1
Salut, c'est peut etre dû à ta déclaration de bibliothèque.
"scanf" appartient bien à stdio.h et cin je crois que bien que c 'est iostream.h. Tu as mal déclaré cette dernière ->tu as oublié le ".h" à la fin de #include <iostream..>!
0
merci de ta reponse deja..
mais j'ai essayé ce que tu m'as dit mais ça ne change rien.
0
Stupeflip Messages postés 391 Date d'inscription jeudi 8 février 2007 Statut Membre Dernière intervention 4 décembre 2007 94
28 mai 2007 à 13:16
Salut,

Tu peux bien déclarer iostream sans mettre le .h à la fin
#include <iostream>

Sinon peut-être que le problème se situe dans le fait que tu n'initialises pas ton
char * bob;

Fais un new sur bob ou donne lui une taille fixe.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
j'ai allouée de la memoire a un objet de type char et la sa fonctionne.Cependant je ne comprend pas pourquoi avec scanf ma premiere declaration fonctionne alors que avec cin je dois allouer l'espace mémoire.
0
Utilisateur anonyme
28 mai 2007 à 16:02
essaye en déclarant ta variable bob comme un string
-2
Mahmah Messages postés 496 Date d'inscription lundi 17 septembre 2007 Statut Membre Dernière intervention 22 juin 2010 125
4 avril 2008 à 18:38
Bonjour,

Dans le cas d'un fichier qui est inclus avec son emplacement exacte il faut mettre "". Autrement dit, si le fichier doit être trouvé à partir d'une variable d'environnement ou d'un paramètre du compilateur c'est entre chevrons.

M.
-2
c pas #include<stdio.h> mais #include "stdio.h"

salut!!
-3
Utilisateur anonyme
27 févr. 2008 à 19:32
tout dépend de où se trouve stdio.h

si tu veux préciser son emplacement il faut utiliser les " ", donc d'apres ce que tu di, stdio.h serait dans le même répertoire que le programme

si c'est une libraire commune à tout les programmes (comme string, iostream etc) alors il faut utiliser les < >
-1
silouane > Utilisateur anonyme
4 avril 2008 à 17:16
apres avoir inclut iostream tu dois meme using namespace std;
#include<iostream>
using namespace std;
0