IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

retourner une chaine de caractere


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 102
    Par défaut retourner une chaine de caractere
    bonjours a tous
    J'ai cree une fonction "replace" avec 3 parametres
    comme son nom l'indique cette fonction remplace des morceau de chaine par un autre morceau.
    mon probleme etant que je ne sais pa comment retourner ma chaine de caractere dans ma fonction.
    j' ai essayer return(chaine)
    avec chaine=ma chaine de caractere

    l'erreur signaler et la suivante:
    attention : return transforme un pointeur en entier sans transtypage

    merci beaucoup pour votre aide

  2. #2
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Citation Envoyé par acik59
    bonjours a tous
    J'ai cree une fonction "replace" avec 3 parametres
    comme son nom l'indique cette fonction remplace des morceau de chaine par un autre morceau.
    mon probleme etant que je ne sais pa comment retourner ma chaine de caractere dans ma fonction.
    j' ai essayer return(chaine)
    avec chaine=ma chaine de caractere

    l'erreur signaler et la suivante:
    attention : return transforme un pointeur en entier sans transtypage

    merci beaucoup pour votre aide
    En montrant ton code ca irais tellement mieux pour t'aider ...
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 102
    Par défaut
    OK tu as raison
    alors voici mon code


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    regsub(char CH1[100],char SUJ[100],char CH2[100])
    {
     
     char FIN[100]; 
     
     int I;      
     int J;     
     int K;      
     int TROUVE;
     
     TROUVE=0;
     for (I=0; SUJ[I] && !TROUVE; I++)
     
     if (SUJ[I]==CH1[0])
            {
             for (J=1; CH1[J] && (CH1[J]==SUJ[I+J]); J++)
                ;
             if (CH1[J]=='\0') TROUVE=1;
            }
    if (TROUVE)
        {
         I--;
     
         for (K=0; SUJ[K+I+J]; K++)
              FIN[K]=SUJ[K+I+J];
         FIN[K]='\0';
        for (K=0; CH2[K]; K++,I++)
              SUJ[I]=CH2[K];
              for (K=0; FIN[K]; K++,I++)
              SUJ[I]=FIN[K];
              SUJ[I]='\0';
        }
     
     return(SUJ);
     
    }
     
     
    MAIN()
    {
     
    char suj2[100];
     
    sprintf(suj2,"une fonction majoree et minoree est une fonction bornee");
     
     
    suj2=regsub("fonction",suj2,"suite");
     
     
    }

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 102
    Par défaut
    en plus de l'erreur que j'ai ennoncer precedement
    j'ai aussi une erreur dans mon main

    erreur: type incompatibles dans affectation

  5. #5
    Membre éclairé
    Homme Profil pro
    Analyste/développeur Java EE
    Inscrit en
    Janvier 2005
    Messages
    376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste/développeur Java EE

    Informations forums :
    Inscription : Janvier 2005
    Messages : 376
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    regsub(char CH1[100],char SUJ[100],char CH2[100])
    ->
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    char * regsub(char CH1[100],char SUJ[100],char CH2[100])
    Edit: ton code n'est pas très clair non +

  6. #6
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Oulala... attention à la casse des caractères dans le nom de la fonction main, pas de majuscule et la signature est fausse, tu as le choix entre les deux:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    int main (void)
    int main (int argc, char ** argc)
    Dans ta fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    regsub(char CH1[100],char SUJ[100],char CH2[100])
    Là elle ne retourne rien et le mieux aurait bien été de passer par des pointeurs pour les arguments soit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    char * regsub (const char * CH1, char * SUJ, const char * CH2)
    Pour le return de ta fonction tu peux alors faire ainsi:
    Enfin c'est ainsi que j'aurais fait les choses... à voir donc

    Un conseil également, évite d'utiliser des identifiants de variables en majuscule, par convention on utilise dans le monde de la programmation ce genre de casse des identifiants que pour les constantes !
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 102
    Par défaut
    merci j'essaye puis je reviens pour dire si ca marche!!

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 102
    Par défaut
    je ne sais pa utiliser les pointeur !!
    est ce qu'il y a des changement que sur ce que tu m'a dit ou alors beaucoup de chose change!!!!!!!!

Discussions similaires

  1. Retourner la date systeme dans une chaine de caractere
    Par theprince009 dans le forum C++
    Réponses: 5
    Dernier message: 03/01/2012, 23h19
  2. Retourner une chaine de caractere a partir du flex
    Par lamis2009 dans le forum Autres éditeurs
    Réponses: 0
    Dernier message: 28/04/2009, 19h52
  3. retourner une chaine de caractere a partir du flex
    Par lamis2009 dans le forum Générateurs de compilateur
    Réponses: 0
    Dernier message: 28/04/2009, 19h51
  4. fonction qui retourne une chaine de caracteres
    Par pyrrhias dans le forum Débuter
    Réponses: 3
    Dernier message: 20/01/2009, 10h49
  5. Réponses: 9
    Dernier message: 06/11/2007, 12h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo