Ahhh....je commence à comprendre...
J'avais oublié que les chaines de caractère étaient des tableaux...
Merci beaucoup!
Tiens, au fait: je viens de remarquer (après modification du code, qui maintenant marche) que strcpy marche sans avoir inclus <string.h>....alors que dans le Tuto il est écrit qu'il faut l'inclure...Savez-vous pourquoi?
Je pense que la réponse est bete: strcpy est dans une autre librairie, comme stdlib...
Tiens, au fait: je viens de remarquer (après modification du code, qui maintenant marche) que strcpy marche sans avoir inclus <string.h>....alors que dans le Tuto il est écrit qu'il faut l'inclure...Savez-vous pourquoi?
A lire très attentivement et à comprendre absolument avant d'aller plus loin :
1 - Je rappelle qu'un fichier d'en-tête (ou header : <xxx.h> ou "yyy.h") contient l'interface des fonctions (prototypes séparés) et non les fonctions elle-mêmes. Ce ne sont ni des 'librairies' (libraries), ni des bibliothèques. Si on t'a dit autre chose, c'est erroné.
2 - Il est techniquement possible d'appeler une fonction sans déclaration préalables, mais le compilateur fera des hypothèses :
- Le nombre de paramètre est indéterminé et de type int
- Le type retourné est int.
Si ce n'est pas la réalité, le comportement est indéterminé. C'est notamment le cas de strcpy() qui attend des char *, et qui seront convertis en int. Il est donc fortement recommandé de fournir au compilateur les moyens de générer le bon code (et de vérifier le nombre et le type des paramètres par la même occasion), c'est à dire les déclarations complètes des fonctions telles qu'elles se trouvent dans les headers adéquates :
<stdio.h>, <stdlib.h>, <string.h> etc.
3 - Il est fortement recommandé de configurer son compilateur pour qu'il prévienne en cas d'appel de fonction sans déclaration préalable (oubli de header, par exemple).
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Recueil de code C et C++ http://fvirtman.free.fr/recueil/index.html