manipulation chaine de caractere
bonjour,
débutant dans le langage c,
pour bien comprendre le fonctionnement les fonctions qui manipules des chaînes de caractère,
j'ai écrit le code suivant qui devrait être l'équivalent de le fonction :
Citation:
" char* strcpy(char* copieDeLaChaine, const char* chaineACopier) "
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
| #include <stdio.h>
#include <stdlib.h>
#include <string.h>
char* transfer(char* copieDeLaChaine, const char* chaineACopier);
int main(int argc, char *argv[])
{
/*
* INITIALISATION CHAINES DE CARACTERES
*/
char chaine[] = "Texte a copier", copie[100] = {0};
char *copier = NULL;
/*
* RECUPERATION DE LA COPIE DE LA CHAINE A VERS LA CHAINE B
*/
*copier = *transfer(copie, chaine);
/*
* AFFICHAGE DES CHAINES
*/
printf("chaine vaut : %s\n", chaine);
printf("copie vaut : %s\n", copie);
return 0;
}
/*
* FONTION EQUIVALENTE
*
* DE :
*
*char* strcpy(char* copieDeLaChaine, const char* chaineACopier);
*/
char* transfer(char* copieDeLaChaine, const char* chaineACopier)
{
char chaine[] = "Texte a copier", copie[100] = {0};
int nombreCaractere = 0;
char caractereActuel = 0;
do
{
caractereActuel = chaine[nombreCaractere];
copie[nombreCaractere] = chaine[nombreCaractere];
nombreCaractere++;
}
while(caractereActuel != '\0');
return copie[nombreCaractere];
} |
hélas :cry: ce code ne renvois pas de pointeur :arf:
ou est mon erreur? :oops: pour un début c'est mal partie !