Je ne trouve pas mon segfault
snipetoy
Messages postés
4
Date d'inscription
Statut
Membre
Dernière intervention
-
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour j'essaye de crée une fonction dont le but et de savoir si deux chaine match mon programme ma l'air bon mais il y a u segfault que je trouve pas donc moi mon code :
J'ai rajouté des putchars pour voir jusqu'a ou sa allez et sa m'affiche le t mais pas le a donc je pense que c'est dans mon while .
int match2(char *s1, char *s2, int a, int i) { my_putchar('t'); while (s1[i + a] == s2[i] || s2[i] == '*') { my_putchar('a'); if (s1[i + a] == s2[i]) i = i + 1; if (s2[i] == '*') { my_putchar('b'); while (s2[i + 1] != s1[i + a] && s2[i + 1] != '*') { if (s1[i + a] == '\0') { return (0); } a = a + 1; } a = a - 1; } i = i + 1; if (s1[i + a] == '\0' && s2[i] == s1[i + a - 1]) { return (1); } } return (0); }
J'ai rajouté des putchars pour voir jusqu'a ou sa allez et sa m'affiche le t mais pas le a donc je pense que c'est dans mon while .
A voir également:
- Je ne trouve pas mon segfault
- Pourquoi ma tv ne trouve pas toutes les chaînes - Guide
- Où se trouve mon adresse url ? - Guide
- Ou se trouve le presse papier - Guide
- Je ne trouve pas ma clé usb sur mon pc - Guide
- Ou trouver mon adresse ip - Guide
2 réponses
Bonjour,
mon programme ma l'air bon mais il y a u segfault
Si ya un segfault, c'est que le programme n'est pas bon :-p.
my_putchar()
Pourquoi ne pas utiliser putchar() qui est portable ? C'est toi qui as codé cette fonction ?
On aurait besoin aussi de la façon dont tu appelles la fonction.
Bien sûr, si tu utilises une ou des variables dans l'appel, il faut nous montrer comment elles ont été définies.
Cdlt,
mon programme ma l'air bon mais il y a u segfault
Si ya un segfault, c'est que le programme n'est pas bon :-p.
my_putchar()
Pourquoi ne pas utiliser putchar() qui est portable ? C'est toi qui as codé cette fonction ?
On aurait besoin aussi de la façon dont tu appelles la fonction.
Bien sûr, si tu utilises une ou des variables dans l'appel, il faut nous montrer comment elles ont été définies.
Cdlt,
D'abord merci de ton aide ,ensuite non je ne l'ai pas codé seul j'étais avec un ami ,j'ai utilisé my_putchar car je l'avais sous la main ;) J'ai une partie match aussi ou je l'ai définis je peut le mettre aussi :
int match(char *s1, char *s2)
{
int i;
int a;
i = 0;
a = 0;
match2(s1, s2, a, i);
}
Cdlt.
int match(char *s1, char *s2)
{
int i;
int a;
i = 0;
a = 0;
match2(s1, s2, a, i);
}
Cdlt.