Probleme sous dev-cpp :s louche

deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 - 19 oct. 2005 à 20:12
Hylvenir Messages postés 364 Date d'inscription mercredi 11 février 2004 Statut Membre Dernière intervention 5 octobre 2006 - 20 oct. 2005 à 08:53
Bonjour,



Quelqun peut il me dire pourquoi la ligne de code :



strcat(D_message,D_ptdayweek[D_tmt->tm_wday]);



Fonctionne sour borland et non sous dev cpp? string.h est inclu, bref
tous marche sous borland, mais pas sous dev-cpp. De plus a la
compilation il ne me met aucune erreur, c'est a l'éxécution que le
programme plante quand il veu effectuer cette action.



Je comprend pas pourquoi.



Si vous avez la solution je suis tout ouille lol.



PS: D_ptdayweek est un pointeur de type const char et qui est un tableau de char contenant les jours de la semaine.

4 réponses

cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
19 oct. 2005 à 20:47
Je suis tout ouïe !!! :)
Et essai #include <string>

if(!Meilleur("Joky")) return ERREUR;<
0
Hylvenir Messages postés 364 Date d'inscription mercredi 11 février 2004 Statut Membre Dernière intervention 5 octobre 2006 2
19 oct. 2005 à 20:48
Salut,

et D_message est bien initialisé pour que le strcat ne déborde pas ?

et tm_wday est bien compris entre 0 et 6 ?

Ma participation à la saturation du net:
http://hylvenir.free.fr
0
flaith Messages postés 17 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 29 octobre 2008
20 oct. 2005 à 00:19
essaye ca :



#include <stdio.h>





// ::: C'est un bout de programme :::

char _TITLE[MAX_PATH];

memset(_TITLE,'\0',MAX_PATH+1);



strcpy(_TITLE, GS_VERSION);



strcat(_TITLE," : "");

strcat(_TITLE,FileToOpen);

strcat(_TITLE,""");

// ...
0
Hylvenir Messages postés 364 Date d'inscription mercredi 11 février 2004 Statut Membre Dernière intervention 5 octobre 2006 2
20 oct. 2005 à 08:53
char _TITLE[MAX_PATH];
memset(_TITLE,'\0',MAX_PATH+1);



peut être avantageusement remplacé par :



char _TITLE[MAX_PATH] = ""; // ou = { '\0' };


tout simplement.



et tous les strcat par un sprintf bien senti ;)
0
Rejoignez-nous