OVH Cloud OVH Cloud

problème : strcpy undeclared

5 réponses
Avatar
Rudy
Bonjour,

Lorsque j'essaie de compiler mon programme (avec dev), voici l'erreur que
j'obtiens :

`srtcpy' undeclared (first use this function)

Voici la ligne concernée :

for (cptr = 0 ; cptr < longueur+1 ; cptr++)
(==>) srtcpy(liste[cptr],mot_mystere[cptr]);

Voici les includes :

#include <iostream>
#include <string>

using namespace std;

string (il y a le même problème avec string.h) étant incluse, savez-vous
pourquoi il y a cette erreur ?

N'hésiteez pas à me demander le reste du programme si vous en aavez besoin
...

Merci !!

@+

5 réponses

Avatar
Nicolas Favre-Felix
Rudy wrote:
Bonjour,

Lorsque j'essaie de compiler mon programme (avec dev), voici l'erreur que
j'obtiens :

`srtcpy' undeclared (first use this function)
[snip]

string (il y a le même problème avec string.h) étant incluse, savez-vous
pourquoi il y a cette erreur ?


Mmmh, peut-être parce que c'est écrit srtcpy au lieu de strcpy ? :)


Nicolas.

Avatar
Vincent Lascaux
Lorsque j'essaie de compiler mon programme (avec dev), voici l'erreur que
j'obtiens :

`srtcpy' undeclared (first use this function)


1) strcpy c'est une fonction de C, mais pas de C++
2) arrêter le café, lire le titre du message ainsi que le message d'erreur
(c'est comme le jeu des 7 différences quand on était petit ;))

Voici la ligne concernée :

for (cptr = 0 ; cptr < longueur+1 ; cptr++)
(==>) srtcpy(liste[cptr],mot_mystere[cptr]);

Voici les includes :

#include <iostream>
#include <string>

using namespace std;

string (il y a le même problème avec string.h) étant incluse, savez-vous
pourquoi il y a cette erreur ?


Avec string.h ca doit passer en mettant le bon nom de fonction
Avec string (donc en C++), pour copier une string tu fais ca :
std::string a = "foo";
std::string b = "bar";

a = b; // a devient "bar"

std::cout << "a = " << a << "nb = " << b << std::endl; //la preuve

--
Vincent

Avatar
Rudy
Mmmh, peut-être parce que c'est écrit srtcpy au lieu de strcpy ? :)



Alala ! Autant de galère pour ca !!

En effet, c'était bien ca ... Merci beaucoup !!!!!

@+

Avatar
Franck Branjonneau
"Rudy" écrivait:

Voici la ligne concernée :

for (cptr = 0 ; cptr < longueur+1 ; cptr++)
(==>) srtcpy(liste[cptr],mot_mystere[cptr]);


Tu fais un strcpy dans ta boucle ?!!!

Si vraiment tu ne veux pas utiliser std::string, lis la man page de
strcpy (elle vient avec celle de strncpy qui est déjà plus sure).
--
Franck Branjonneau

Avatar
kanze
Vincent Lascaux wrote:
Lorsque j'essaie de compiler mon programme (avec dev), voici
l'erreur que j'obtiens :

`srtcpy' undeclared (first use this function)


1) strcpy c'est une fonction de C, mais pas de C++


Depuis quand ? Elle fait encore partie de la dernière norme.
::strcpy est dépréciée, mais std::strcpy non.

C'est vrai qu'elle ne sert pas beaucoup, parce qu'on a de
meilleurs outils avec la classe string, mais elle reste là quand
même, pour des masochistes.

--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34