Ajouter un commentaire

zakak
Portée de variable

Bonjour !

Je dois écrire une fonction ne retournant rien et prenant en paramètre une chaine de caractères pour la modifier. Le problème, c'est qu'à l'intérieur de la fonction, la variable est bien modifiée, mais pas à l'extérieur. C'est tout à fait normal d'après le code vu que je ne retourne rien. Mais comment puis-je faire pour retourner la nouvelle chaine sans faire de char * fonction(char * chaine) ???

#include <stdio.h>
#include <stdlib.h>

void fonction(char * chaine)
{
  chaine = "azerty";
  printf("%s\n", chaine); // ca ecrit azerty
}

int main()
{
char * chaine="qwerty";

fonction(chaine);

printf("%s\n", chaine); // ca ecrit qwerty
return 0;
}

Merci d'avance !

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
 K  K  PPPP   EEEE  DDD   M   M 
K K P P E D D MM MM
KK PPPP EEE D D M M M
K K P E D D M M
K K P EEEE DDD M M