Compter des caractere en c++

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
Configuration: Windows XP
Internet Explorer 6.0

2 réponses

  1. Contributeur
    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
    1. 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