CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Structures en C

Cotisation
Cotisation
Niveau 10
13 janvier 2015 à 18:58:15

Coucou :hap:

Je dois faire un programme dans lequel j'utilise des structures, mais elle est "chainée"

j'ai :

struct type1{
struct type1 * pretype;
type2 objet;
};
typedef struct type1 type1;

struct type2{
type1 obj;
};
typedef struct type2 type2;

Je sais pas si c'est clair, mais du coup j'ai un objet de type2 dans la structure de type et un objet de type2 dans celle de type1 :(

Comment je pourrais m'y prendre ?

merci :)

godrik
godrik
Niveau 30
13 janvier 2015 à 21:14:38

Ce n'est pas possible de composer deux structures qui s'inclue mutuellement. C'est comme vouloir faire
struct s{struct s foo;};
La definition est recursive.

Parcontre, tu peux garder des pointeurs de l'une vers l'autre.

Pseudo supprimé
Pseudo supprimé 13 janvier 2015 à 21:53:10

Possible avec des pointeurs sur void* puis en castant.
Mais c'est dégueulasse.

godrik
godrik
Niveau 30
13 janvier 2015 à 23:26:37

GouKen91, pourquoi faire ca quand tu peux avoir un vrai pointeur vers le bon type?

luluvatar_Modo
luluvatar_Modo
Niveau 7
14 janvier 2015 à 11:34:12

ta pensé a inclure arpa/inet.h
et aussi sys/socket.h

PFFFFFFFFF

gromouton
gromouton
Niveau 6
14 janvier 2015 à 12:40:03

je ferais comme godrik, sinon un tableau de structure ça dépend de ce que tu cherches

Pseudo supprimé
Pseudo supprimé 15 janvier 2015 à 05:07:30

Le 13 janvier 2015 à 23:26:37 godrik a écrit :
GouKen91, pourquoi faire ca quand tu peux avoir un vrai pointeur vers le bon type?

C'est ce que je dis, aucun intérêt. Je voulais dire par là qu'il était quand même possible de le faire.

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment