none
brobleme avec la biblioteque(la class) string! RRS feed

  • Question

  • salut.je suis un debutant en cisuel c++.

    commnt je peux declarer un variable de type string sachant que j'ai ecrit la biblioteque #include<string> et quand je declare un variable string une erreur se déclanche me disant que le type string n'ai pas connue???

    // Ton ami et les extraterrestres.cpp : définit le point d'entrée pour l'application console.
    
    //
    
    
    
    #include "stdafx.h"
    
    #include<iostream>
    
    #include<conio.h>
    
    #include<string.h>
    
    
    
    int _tmain(int argc, _TCHAR* argv[])
    
    {
    
     int t[8],i,j;
    
     string k;//ici letype string n'est pas connue!!!!!!!!!
    
    	for(i=0;i<9;i++)
    
    	{std::cout<<"saisir le numéro "<<i+1<<" : \n";
    
    	 std::cin>>t[i];}
    
     for(i=0;i<9;i++)
    
    		std::cout<<t[i]<<"\t";
    
    	std::cout<<std::endl;
    
    	std::cout<<"Le codage de votre numéro est le suivant :\n";
    
     for(i=0;i<9;i++)
    
    		for(j=0;j<=t[i];j++)
    
    
    
    
    
    
    
    
    
     _getch();
    
    	return 0;
    
    }
    
    
    
    
    lundi 14 juin 2010 11:30

Réponses

Toutes les réponses

  • Bonjour,

    Il faut ajouter

    using namespace std ;


    ou déclarer la variable k comme ça 

    std::string k ;
    • Marqué comme réponse benzema10 lundi 14 juin 2010 11:57
    lundi 14 juin 2010 11:54
  • Bonjour,

    Il faut ajouter

    using namespace std ;


    ou déclarer la variable k comme ça 

    std::string k ;

    merci hammadi pour votre aide .
    lundi 14 juin 2010 11:58
  • Bonjour,

    Hammadi a déjà répondu à votre question, mais je me permets d’apporter quelques informations supplémentaires :

    Le type std::string n’est pas déclaré dans le fichier <string.h>, mais dans le fichier <string>. Il est donc inutile de mettre

    #include <string.h>

    pour utiliser le type std::string

    Il faut mettre :

    #include <string>

    Dans votre cas, le programme compilera quand même sans #include <string>, car <string> est inclus indirectement dans <iostream>.

    Le fichier <string.h> définit les fonctions C de manipulation de chaînes de caractères, comme strcpy, strlen, etc.

     

    Par ailleurs, dans votre code, vous déclarer la variable t par :

    int t[8];

    Cette ligne déclare un tableau de 8 éléments, indexés de 0 à 7 (i[0] i[1] .. i[7]).

    Dans vos boucles for(i=0;i<9;i++), l’indice varie de 0 à 8, il aurait donc fallu déclarer le tableau par :

    int t[9];

    Sans cela, votre programme aura un comportement indéterminé : il se peut qu’il fonctionne normalement, mais il peut aussi se comporter de manière anormale ou planter.

     

    Cordialement,

    Chris


    mardi 15 juin 2010 07:34