Xor avec char *
Fermé
talbsbast
Messages postés
54
Date d'inscription
mardi 21 juin 2011
Statut
Membre
Dernière intervention
3 février 2023
-
11 août 2014 à 14:43
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 11 août 2014 à 18:02
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 11 août 2014 à 18:02
A voir également:
- Xor char
- Char ai - Guide
- Expecting value: line 1 column 1 (char 0) ✓ - Forum MacOS
- Char code ascii - Guide
- Convertir string en char ✓ - Forum C++
- Sql xor ✓ - Forum Webmastering
2 réponses
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 836
Modifié par fiddy le 11/08/2014 à 15:16
Modifié par fiddy le 11/08/2014 à 15:16
Bonjour,
En bonne pratique, il vaut mieux nous préciser pourquoi tu penses qu'il y a une erreur.
Ici, vu le code, je pense qu'il s'agit d'un SEGFAULT.
char *r;
Il faut réserver une zone mémoire dans le tas, car sinon tu as écrit au hasard dans la mémoire...
Pour cela, tu peux utiliser malloc (ne pas oublier d'inclure stdlib.h).
Je te conseille également de remplacer tes chiffres 5 par une variable que tu auras probablement calculé via :
De fait, il faut mettre cette instruction après char *s1="salut";
Merci pour la prochaine fois de poster ton code entre deux balises "code c".
Exemple :
<"code c">/*ici je mets mon code*/<"/code"> (sans les guillemets).
Cdlt,
Google is your friend
En bonne pratique, il vaut mieux nous préciser pourquoi tu penses qu'il y a une erreur.
Ici, vu le code, je pense qu'il s'agit d'un SEGFAULT.
char *r;
Il faut réserver une zone mémoire dans le tas, car sinon tu as écrit au hasard dans la mémoire...
Pour cela, tu peux utiliser malloc (ne pas oublier d'inclure stdlib.h).
char *r=malloc(5);
Je te conseille également de remplacer tes chiffres 5 par une variable que tu auras probablement calculé via :
int taille=strlen(s1);
De fait, il faut mettre cette instruction après char *s1="salut";
Merci pour la prochaine fois de poster ton code entre deux balises "code c".
Exemple :
<"code c">/*ici je mets mon code*/<"/code"> (sans les guillemets).
Cdlt,
Google is your friend
talbsbast
Messages postés
54
Date d'inscription
mardi 21 juin 2011
Statut
Membre
Dernière intervention
3 février 2023
1
11 août 2014 à 17:40
11 août 2014 à 17:40
Merci pour votre réponse, effectivement c'était un problème d'allocation mémoire.
Et merci pour l'information :)
Cdlt
Et merci pour l'information :)
Cdlt
Modifié par fiddy le 11/08/2014 à 18:02
Il faut garder un byte pour stocker le '\0'.
Du coup il ne faudra pas oublier de le rajouter manuellement à la fin de ta fonction.