Strncpy

ffoh -  
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

je suis en train d'ecrire la surchare de l'operateur d'assignation de ma classe qui possede une chaine de caractères

attribut protected "char * ss"

donc j'utilise strcpy pour copier la chaine comme on peut le voir dans cette exemple

class jeu{
char ss;
public:
...
jeu & operator=(const jeu & j);

};

jeu jeu::operator=(const jeu & j)
{
...
strcpy(this->ss,j.ss);
...
}

pour etre clair tous marche sauf ce strcpy (j'ai tester sans , c ok), ca passe a la compile mais ca plante quand tjs a ce nivau

est ce que quelqu'un voit ou est mon probleme ? merci d'avance

2 réponses

ffoh
 
je ne comprend non plus pourquoi ceci ne marche pas

for (int i=0;i<strlen(j.ss);i++)
ss[i]=j.ss[i];
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Salut,
Tu as déclaré ss en char. Cela doit être un tableau de char ou un pointeur sur un char.
char ss[150]; ou char *ss par exemple. Dans ce cas (pointeur), il faudra allouer la zone. Et ne pas oublier le free avant la fin du programme.
Cdlt
0