pcmanprogrammeur
Messages postés126Date d'inscriptiondimanche 27 mars 2005StatutMembreDernière intervention16 octobre 2010
-
20 mars 2006 à 19:21
pcmanprogrammeur
Messages postés126Date d'inscriptiondimanche 27 mars 2005StatutMembreDernière intervention16 octobre 2010
-
27 mars 2006 à 17:19
Bonjour!
J'ai un problème avec un slash et un strcat :
Quand je lance mon programme, j'ai l'erreur segmentation fault.
J'ai trouvé que cela venait du / dans le strcat.
Comment faire?
Merci de votre réponse.
A bientôt.
pcmanprogrammeur
Messages postés126Date d'inscriptiondimanche 27 mars 2005StatutMembreDernière intervention16 octobre 2010 20 mars 2006 à 21:36
En fait, je crée un programme C sous Linux. Une fois compilé, l'utilisateur passe un paramètre à mon programme. Ce paramètre correspond à un dossier.
Lorsque je veux concaténer moi même le paramètre et "/fichier.txt", c'est là que j'ai l'erreur "Segmentation fault".
Voilà, tu sais tout.
cs_Joky
Messages postés1787Date d'inscriptionlundi 22 novembre 2004StatutMembreDernière intervention31 janvier 20092 20 mars 2006 à 22:24
Non, je sais pas comment tu as déclaré ligne
Et pour un chemin j'aurai plutot utilisé l'anti slach
en sachant qu'en C un anti Slach s'écrit '[file://'/ \\']
BunoCS
Messages postés15475Date d'inscriptionlundi 11 juillet 2005StatutModérateurDernière intervention23 avril 2024103 21 mars 2006 à 10:41
Ce que les autres veulent te dire c'est que tu n'as peut-être pas alloué assez de mémoire pour "ligne"..
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage
au pire, check le en débug ou avec une fonction de trace
(notemment apres le strcpy)
___________________________________________________________
Magicalement
Nono
BunoCS
Messages postés15475Date d'inscriptionlundi 11 juillet 2005StatutModérateurDernière intervention23 avril 2024103 22 mars 2006 à 09:13
Si je peux me permettre, je vais répondre pour Magic_Nono:
- il a mis 255 comme il aurait pu mettre 12 ou 65
- la longueur max d'un chemin de fichier est en effet de 255 caractères
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage
magic_Nono
Messages postés1878Date d'inscriptionjeudi 16 octobre 2003StatutMembreDernière intervention16 mars 2011 22 mars 2006 à 09:38
sinon, j'utilise une variable d'environnement:
TCHAR szFullInfFName[_MAX_PATH];
définie dans stdlib.h
/*
* Sizes for buffers used by the _makepath() and _splitpath() functions.
* note that the sizes include space for 0-terminator
*/
#ifndef _MAC
#define _MAX_PATH 260 /* max. length of full pathname */
#define _MAX_DRIVE 3 /* max. length of drive component */
#define _MAX_DIR 256 /* max. length of path component */
#define _MAX_FNAME 256 /* max. length of file name component */
#define _MAX_EXT 256 /* max. length of extension component */
#else /* def _MAC */
#define _MAX_PATH 256 /* max. length of full pathname */
#define _MAX_DIR 32 /* max. length of path component */
#define _MAX_FNAME 64 /* max. length of file name component */
#endif /* _MAC */
donc là, en effet, elle vaut un poil plus que 256,
certaienement pour le "c:" du départ...
___________________________________________________________
Magicalement
Nono