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 :

récupérer une chaine de caractere dans un fichier


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 302
    Points : 54
    Points
    54
    Par défaut récupérer une chaine de caractere dans un fichier
    bonjour,

    je voudrais savoir comment on fait pour récupérer une chaine de caractere dans un fichier.
    en fait je dois lire mon fichier et afficher les lignes qui contiennent la chaine de caractere "0".
    Je suis arriver à faire pour 0 tout seul mais je ne sais pas comment faire pour ajouter les double cotes

    j'ai fait:
    zero=strchr(chaineint,'0');
    cette fonction me permet de voir si chaineint contient le caractere 0 mais moi je veux voir si elle contient le caractere "0" et je pense que la fonction diffère quand c'est un seul caractere à une chaine de caractere

    pouvez vous m'aider please

  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 : 47
    Localisation : France, Haut Rhin (Alsace)

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Il te faut plutôt utiliser la fonction strstr qui elle, recherche non pas un caractère mais une sosu-chaîne

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #include <stdio.h>
    #include <string.h>
     
     
    int main (void)
    {
       const char * str = "Chaine avec un \"0\" a l'interieur";
       printf ("%s\n", strstr (str, "\"0\""));
     
       return 0;
    }
    Voilà

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 302
    Points : 54
    Points
    54
    Par défaut
    merci franck!!
    je n'etais pas près de trouver, je n'ai jamais vu cette fonction.

    j'ai une autre petite question, je travaille sous GTK+ et j'ai vu que tu avais le petit logo donc je suppose que tu connais bien. Peux tu me dire comment on appelle une fonction.
    en fait dans mon interface graphique j'ai un bouton enregistrer et un bouton quitter. Dans mon programme principal je connecte mes boutons à mes fonctions le truc c'est que lorsqu'on clique sur quitter il faut que cà enregistre, pour ca il faudrait rappeller la fonction enregistrer dans la fonction quitter mais comment faire? Faut il reconnecté le boutton enregistrer dans la fonction quitter? enfin voila je comprend pas très bien comment ca marche en gtk

    merci,
    pepsister

  4. #4
    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 : 47
    Localisation : France, Haut Rhin (Alsace)

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Citation Envoyé par pepsister
    j'ai une autre petite question, je travaille sous GTK+ et j'ai vu que tu avais le petit logo donc je suppose que tu connais bien.



    Citation Envoyé par pepsister
    Peux tu me dire comment on appelle une fonction.
    en fait dans mon interface graphique j'ai un bouton enregistrer et un bouton quitter. Dans mon programme principal je connecte mes boutons à mes fonctions le truc c'est que lorsqu'on clique sur quitter il faut que cà enregistre, pour ca il faudrait rappeller la fonction enregistrer dans la fonction quitter mais comment faire? Faut il reconnecté le boutton enregistrer dans la fonction quitter? enfin voila je comprend pas très bien comment ca marche en gtk
    En fait, tu peux simplement appeler ton callback "enregistrer" dans ton callback "quitter". Deux choix se posent à toi pour le passage des arguments!
    1. Tu n'utilises aucun des deux arguments, tu peux sans problème passer les paramètre sous la valeur NULL lors de l'appel de la fonction enregistrer.
    2. Tu peux sans problème, passer les paramètres de ta fonction quitter à la fonction enregistrer, si tu ne les utilises pas dans la fonction enregistrer (comme avant quoi).


    Si tu utilises par exemple l'argument "data" dans la fonction enregistrer, passe là également dans la fonction quitter pour marquer l'coup car je ne sais pas si l'argument est placé même lorsque la fonction n'est pas appelée directement par le widget auquel elle est associée et alors tu passes le paramètre data comme second paramètre lors de l'appel à ta fonction d'enregistrement !

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 302
    Points : 54
    Points
    54
    Par défaut
    comment fait on un callback
    voila en fait l'appel de mes fonctions quand je clique sur mes boutons:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    /* Connexion du signal "clicked" du bouton effacer */     
        g_signal_connect(G_OBJECT(pButton_effacer), "clicked", G_CALLBACK(Effacer), (GtkWidget*) supprimer);
     
     /* Connexion du signal "clicked" du bouton enregistrer */     
       g_signal_connect(G_OBJECT(pButton_enregistrer), "clicked", G_CALLBACK(Enregistrer), (GtkWidget*)enregistrer);
    et voila mes fonctions:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    void Enregistrer(GtkWidget *penregistrer, gpointer data[3])
    void Quitter(GtkWidget* pquitter, gpointer data)
    est ce que les callback s'appelle comme mes connexion du signal clicked? et je ne vois pas trop quoi passer en paramètre vu la forme de l'appelle si c'est ca.

  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 : 47
    Localisation : France, Haut Rhin (Alsace)

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Citation Envoyé par pepsister
    comment fait on un callback
    voila en fait l'appel de mes fonctions quand je clique sur mes boutons:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    /* Connexion du signal "clicked" du bouton effacer */     
        g_signal_connect(G_OBJECT(pButton_effacer), "clicked", G_CALLBACK(Effacer), (GtkWidget*) supprimer);
     
     /* Connexion du signal "clicked" du bouton enregistrer */     
       g_signal_connect(G_OBJECT(pButton_enregistrer), "clicked", G_CALLBACK(Enregistrer), (GtkWidget*)enregistrer);
    et voila mes fonctions:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    void Enregistrer(GtkWidget *penregistrer, gpointer data[3])
    void Quitter(GtkWidget* pquitter, gpointer data)
    est ce que les callback s'appelle comme mes connexion du signal clicked? et je ne vois pas trop quoi passer en paramètre vu la forme de l'appelle si c'est ca.
    Mais les callback (fonctions de rappel) sont justement les fonctions que tu enregistres avec l'appel à g_signal_connect comme tu l'as montré !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 25/03/2008, 10h42
  2. Remplacer une chaîne de caractères dans un fichier .hex
    Par subsix dans le forum Assembleur
    Réponses: 8
    Dernier message: 23/11/2006, 21h06
  3. Réponses: 10
    Dernier message: 16/06/2006, 13h53
  4. Réponses: 10
    Dernier message: 22/05/2006, 11h45

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