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 :

Problème avec une structure


Sujet :

C

  1. #1
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 37
    Par défaut Problème avec une structure
    Bonjour,

    Je programme une petite structure pour de l'embarqué.

    Voici la déclaration de la structure dans le *.h

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    #define MAX_EVENT		1024
     
    struct CAPTURE{
    	unsigned int capture_timer[MAX_EVENT];
    	unsigned int interrupt;
    };
    Ensuite je veux en utiliser deux dans mon fichier *.c. En voici la déclaration

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    static struct CAPTURE pCapture1;
    static struct CAPTURE pCapture2;
    Et la ca me plante tout, (je me fais rien d'autre que la déclaration pour l'instant) par contre si j'enlève la 2e ligne (pCapture2), tout marche bien. Levez-moi d'un doute, j'ai bien le droit d'avoir deux variables qui pointent sur une structure?

    Merci.

    Pegase.90

  2. #2
    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
    Levez-moi d'un doute, j'ai bien le droit d'avoir deux variables qui pointent sur une structure?
    Oui (variables d'un même type ici, pas de pointeur).
    Le problème se situe peut être sur la taille de ces structures : de l'ordre de 1025 unsigned int chacune. Je ne connais pas la taille de tes unsigned int, mais ça fait peut être beaucoup (pour de l'embarqué)

  3. #3
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par pegase.90 Voir le message
    Je programme une petite structure pour de l'embarqué.
    C'est vague. Quelle architecture ? Les problèmes d'un PIC ne sont pas ceux d'un MPC...
    Voici la déclaration de la structure dans le *.h

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    #define MAX_EVENT		1024
     
    struct CAPTURE{
    	unsigned int capture_timer[MAX_EVENT];
    	unsigned int interrupt;
    };
    OK, mais 1024 int, c'est pas rien pour un PIC...

    Ensuite je veux en utiliser deux dans mon fichier *.c. En voici la déclaration
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    static struct CAPTURE pCapture1;
    static struct CAPTURE pCapture2;
    OK, mais ça fait quand même 2 tableau de 1024 int au bas mot....
    Et la ca me plante tout,
    C'est à dire ? On est pas devins...
    j'ai bien le droit d'avoir deux variables qui pointent sur une structure?
    Je ne vois rien pointer (malgré le nom trompeur qui commence par p). Je vois 2 instances de la même structure. C'est tout à fait correct si la mémoire statique de la cible est suffisamment grande.

    Pour un int de 2 octets : il faut au minimum (1024 + 1) x 2 x 2 octets, soit : 4100 octets. Tu as ça ?

Discussions similaires

  1. problème avec une structure en C
    Par anthony.pa dans le forum C
    Réponses: 2
    Dernier message: 12/02/2013, 14h51
  2. Problème std::set avec une structure
    Par DeathMixer dans le forum C++
    Réponses: 4
    Dernier message: 03/10/2009, 01h05
  3. Problème avec une structure
    Par titux dans le forum C
    Réponses: 5
    Dernier message: 22/07/2007, 16h26
  4. Problème avec une structure
    Par Pierre.g dans le forum C
    Réponses: 4
    Dernier message: 30/12/2006, 12h22
  5. Probléme avec une structure
    Par astragoth dans le forum C++
    Réponses: 3
    Dernier message: 25/04/2006, 20h31

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