Compter des caractere en c++

Fermé
billy - 22 janv. 2007 à 13:05
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 22 janv. 2007 à 22:02
bonjour!
j'ai ecris un programme qui compte les caractère.
le probleme c'est que j'arrive pas a comter les caractere.
ca donne,

#include <iostream>
#include <stdlib.h>
#include <string.h>

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


char *texte[10000];
double nb_de_caractere=strlen(texte);



cout<<"tapez un texte et on vous dira combien de caractère vous avez tapez"<<endl;
cin>>texte;
cout<<"dans ["<<texte<<"]"<<endl;
cout<<"il ya "<<nb_de_caractere<<" de caractere"<<endl;



system("PAUSE");
return 1;


}

ma question c'est pourquoi il compte pas?

meci d'avance
A voir également:

2 réponses

mrud Messages postés 216 Date d'inscription mardi 7 février 2006 Statut Membre Dernière intervention 19 mai 2010 100
22 janv. 2007 à 17:24
salut,
ça , ça fonctionne sous devcpp

#include <iostream>
#include <stdlib.h>
#include <string.h>

using namespace std;

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

char texte[10000];
int nb_de_caractere;

cout<<"tapez un texte et on vous dira combien de caractère vous avez tapez"<<endl;
cin>>texte;
nb_de_caractere=strlen(texte); /*là il peut compter car texte n'est plus vide*/
cout<<"dans ["<<texte<<"]"<<endl;
cout<<"il ya "<<nb_de_caractere<<" de caractere"<<endl;

system("PAUSE");
return 1;

}

[EDIT] pour répondre à ta question pourquoi il ne peut pas compter je peux juste te dire (car je ne fais pas de c++) que si tu veux récupérer le nombre de caractères il faut déja qu'ils soient tappés et donc qu'ils soient dans "text[10000]" sinon tu auras comme résultat zéro:0 car strlen va compter ton text[10000] avant qu'il soit rempli -> il sera vide!
1
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 298
22 janv. 2007 à 22:02
déjà tu fait du C++ donc :
#include <string>
pas besoin du .h
quitte à inclure string autant l'utiliser !
std::string texte;
cin>>texte;
cout<<"taille : "<<texte.size()<<endl;
0