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 :

Tableaux en C


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Février 2010
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2010
    Messages : 32
    Par défaut Tableaux en C
    Bonjour,

    je veux créer plusieurs tableaux de chaine de caractères en même temps
    est ce que je peux le faire par une boucle for??

  2. #2
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 150
    Par défaut
    Bonjour,

    Creer un tableau : le declarer, ou bien le remplir ?

    Si tu as deja du code, poste-le, afin que nous comprenions mieux ce que tu veux faire.
    "La route est longue, mais le chemin est libre" -- https://framasoft.org/
    Les règles du forum

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Février 2010
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2010
    Messages : 32
    Par défaut
    merci pour votre réponse
    bon je veux créer un tableau ensuite le remplir , bon plutôt des tableaux
    j'ai une ligne de texte (que j'ai lu à partir d'un fichier et stocké dans une chaine de caractères) cette ligne contient des champs séparés par des ","
    à chaque fois que je trouve un "," je dois créer un tableau et dans lequel je stocke la chaine (celle avant le ",") dans ce tableau

    bon j'ai fais ce code mais je ne pense pas que c'est vraiment efficace

    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
     for (i=0; i<n; i++) 
       { 
          do
         {
          le = strcspn(line_aux, ","); // le contient la longeur du segment intial de line_aux ne contenant pas ","
          strncpy (field, line_aux, le); // field va contenir le 1er champs
     
         // création de la colonne
         char ** Col;
         Col= calloc(1, sizeof(char *));
                 if (Col == NULL) 
    	     {
    	       printf("ERROR!!! l'allocation de la mémoire pour le tableau est erronée");
    	     }
     
    	     Col[0] = malloc (le* sizeof(char));
     
    	     if (Col[0] == NULL) 
    	     {
    	       printf("ERROR!!! l'allocation de la mémoire pour le champs est erronée!!");
    	     }
    	     strncpy (Col[0], field, le); // charger le 1er champs contenu dans field dans la 1ére ligne du tableau
    	     strcpy(Col[0],"\0");
    	     line_aux = line_aux + le + 2; 
    	} 
        while (line_aux = "\0"); // la séparation de la ligne est finie lorsqu'on rencontre le caractère de fin de chaine
      }

  4. #4
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Février 2010
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2010
    Messages : 32
    Par défaut
    bonjour
    j'ai une déclaration d'un typedef d'une pile comme suit:

    typedef struct pile {
    char * contenu;
    struct pile * prec;
    } pile;

    je veux utiliser un tableaux de piles. je l'ai déclaré ainsi:

    pile *TAB[nb_lines];

    maintenant je vais utiliser une fonction qui va retourner un tableau de piles. comment j'écris le type de son retour? est ce ainsi que je peux le faire??

    pile *TAB[] File_Sep (const char* filename);

    vous remerciant,

  5. #5
    Expert confirmé
    Avatar de diogene
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juin 2005
    Messages
    5 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 761
    Par défaut
    je veux utiliser un tableaux de piles. je l'ai déclaré ainsi:

    pile *TAB[nb_lines];
    Ce n'est pas un tableau de pile mais un tableau de pointeurs sur pile. Un tableau de pile est
    maintenant je vais utiliser une fonction qui va retourner un tableau de piles.
    Une fonction ne peut pas retourner un tableau. Elle peut par contre retourner l'adresse du premier élément du tableau.

    Dans ce cas, on a pour un tableau de pile :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pile *File_Sep (const char* filename);
    Si le tableau est un tableau de pointeurs sur pile, on aura
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pile **File_Sep (const char* filename);

    Attention, le tableau dont on retourne l'adresse du premier élément doit être alloué statiquement (par static ou comme variable globale) ou alloué dynamiquement dans la fonction File_Sep().

  6. #6
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Février 2010
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2010
    Messages : 32
    Par défaut
    Je vous remeeeeeeeeeeeeeeeercie.
    très gentil

Discussions similaires

  1. Réponses: 2
    Dernier message: 19/08/2003, 18h04
  2. free sur des tableaux "a moitié dynamiques"
    Par barthelv dans le forum C
    Réponses: 4
    Dernier message: 31/07/2003, 15h30
  3. [langage] erreurs utilisation tableaux 2 dimensions
    Par drosof dans le forum Langage
    Réponses: 11
    Dernier message: 01/07/2003, 11h44
  4. Réponses: 6
    Dernier message: 04/04/2003, 15h28
  5. Les tableaux en PL/SQL
    Par GRUMLY dans le forum PL/SQL
    Réponses: 5
    Dernier message: 12/08/2002, 18h10

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