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 :

compter le nombre de char


Sujet :

C

  1. #1
    Membre confirmé
    Inscrit en
    Août 2004
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 201
    Par défaut compter le nombre de char
    voici le prototype de la fonction StrSize:

    je voudrais faire une fonction appelle StrSize qui compte le nombre de caractères dans le string qui il lui a été passé, et retourner ensuite la longueur a str

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    int StrSize(char*str)
    {
      str = StrSize(strlen(str));}
    est ce correct ?

    Merci

  2. #2
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 10
    Par défaut
    je n'ai pas compris grand chose à ce que tu veux faire.

    je voudrais faire une fonction appelle StrSize
    Il manque un mot ?
    Y'en à un en trop ?
    ou tu parles d'une fonction appelle_StrSize() ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    int StrSize(char*str)
    {
      str = StrSize(strlen(str));
    }
    Non ce n'est pas correct, pour plusieurs raisons:
    ->la fonction est censée retourner un entier, ce n'est pas le cas elle ne retourne rien.
    ->tu apels StrSize() avec un paramètre de type size_t (retourner par strlen()) or elle prend un char*.
    ->Tu apels la fonction récursivement sans aucune condition de sortie.
    je voudrais faire une fonction [..] qui compte le nombre de caractères dans le string qui il lui a été passé
    ..ce n'est pas ce que fais déja strlen() ?

  3. #3
    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 freecircus
    ..ce n'est pas ce que fais déja strlen() ?
    C'est ce que j'allais dire, c'est exactement le rôle de strlen, ici tu programmes donc pour rien ! Si tu veux refaire strlen il faut s'y prendre autrement et ce n'est d'ailleurs pas un mauvais exercice

    http://franck.hecht.free.fr/index.ph...-libc-string-1
    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 !

  4. #4
    Membre confirmé
    Inscrit en
    Août 2004
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 201
    Par défaut
    est-ce mieux ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    int strsize(char*str)
    {
            int size = strlen(str);
            return (size);
    }

  5. #5
    Membre émérite Avatar de crocodilex
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    697
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 697
    Par défaut
    Citation Envoyé par virtuadrack
    est-ce mieux ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    int strsize(char*str)
    {
            int size = strlen(str);
            return (size);
    }
    Quel est l'intêret de faire ça ?

    strlen() seul ne te suffit pas ?

  6. #6
    Membre confirmé
    Inscrit en
    Août 2004
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 201
    Par défaut
    Croco,

    oui strlen() seul ne suffit pas, car je veux que la longueur du string soit mise dans la variable size, donc quand j'appelle la fonction StrSize ultérieurement, celle-ci calcule la longueur et me retourne size

    est ce que le code que j'ai mis est faisable ?

    Merci

  7. #7
    Membre émérite Avatar de crocodilex
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    697
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 697
    Par défaut
    Citation Envoyé par virtuadrack
    Croco,

    oui strlen() seul ne suffit pas, car je veux que la longueur du string soit mise dans la variable size, donc quand j'appelle la fonction StrSize ultérieurement, celle-ci calcule la longueur et me retourne size

    est ce que le code que j'ai mis est faisable ?

    Merci
    Ton code est correct.
    Mais encore une fois, il n'y a aucun intêret de faire ça.

    Qu'est-ce qui ne te plaît pas dans ce code ? :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    #include <stdio.h>
    #include <string.h>
     
    int main(void)
    {
        int size;
        const char *str = "Hello world !!!";
     
        size = strlen(str);
        printf("Taille de str = %d\n", size);
     
        return 0;
    }

  8. #8
    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 virtuadrack
    Croco,

    oui strlen() seul ne suffit pas, car je veux que la longueur du string soit mise dans la variable size, donc quand j'appelle la fonction StrSize ultérieurement, celle-ci calcule la longueur et me retourne size

    est ce que le code que j'ai mis est faisable ?

    Merci
    Et à ton avis, elle fait quoi la fonction strlen ? Elle compte simplement le nombre de caractères qui constituent ta chaîne passée en argument et renvoie le nombre dans un type size_t !
    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 !

Discussions similaires

  1. Comment compter le nombre de lettre identique ?
    Par divableue dans le forum ASP
    Réponses: 3
    Dernier message: 07/11/2003, 15h01
  2. Compter le nombre de page d'un report
    Par ToYonos dans le forum C++Builder
    Réponses: 4
    Dernier message: 17/06/2003, 09h36
  3. compter le nombre de record
    Par pram dans le forum XMLRAD
    Réponses: 2
    Dernier message: 12/03/2003, 09h53
  4. [TListView] Compter le nombre de lignes
    Par agh dans le forum Composants VCL
    Réponses: 2
    Dernier message: 30/09/2002, 20h25
  5. Compter le nombre ligne listée (COUNT) ?
    Par StouffR dans le forum Langage SQL
    Réponses: 7
    Dernier message: 02/09/2002, 09h41

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