Connaissances Informatiques >> programmation >> C /C + + Programming >> Content
  Derniers articles
  • Comment réparer R6025 fonction virt…
  • Comment lire un nombre de caractère…
  • Comment faire pour convertir une cha…
  • Comment écrire un programme C pour …
  • Comment apprendre le C # Step- by-St…
  • Comment créer une application iPhon…
  • Comment faire un MFC Application au …
  • Comment savoir Computer Game Program…
  • Comment modifier le Silverlight Data…
  • Comment utiliser un STL Vector Itera…
  •   C /C + + Programming
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    C /C + + Programming

    Comment créer une liste chaînée en C

    En C, une liste chaînée vous permet de créer une liste sans en décider à l'avance combien de temps il pourrait être , et sans perdre de mémoire par des éléments allocation vous n'avez pas encore . L'inconvénient est que vous avez à faire tout le travail d'organisation et de gestion de la liste en mémoire. Instructions
    Créer la structure de données
    1

    Choisissez un nom, puis utiliser typedef à définir. Chaque liste chaînée aura besoin d'une structure , même si elle ne dispose que d' une seule variable :

     typedef struct product_data PRODUCT_DATA ; Page 2 

    définir la structure . Le dernier élément doit être un pointeur vers le type que vous venez de définir , et nommé "next" :

     struct {int product_data product_code ; int product_size ; PRODUCT_DATA * suivant ;} ; 
    3

    Allouer deux pointeurs vers cette structure de données , l'initialisation à NULL, comme la liste «tête» et «queue» :

     PRODUCT_DATA * products_head = NULL; PRODUCT_DATA * products_tail = NULL; 
    Ajouter à la liste < br > Hôtels 4

    Affecter une variable temporaire qui est un pointeur vers la structure de données :

     PRODUCT_DATA * newproduct ; 
    5

    utilisation malloc () pour créer un nouvel élément , toujours vérifier en cas d'erreur :

     if (( newproduct = malloc ( sizeof ( PRODUCT_DATA ))) == NULL ) { abort () ; } 
    6

    Remplir les champs du nouvel élément . Définissez son champ "Suivant" pour NULL :

     newproduct -> product_code = Code alternatif ; newproduct -> product_size = NewSize ; newproduct - > suivant = NULL; 
    7

    Définissez la variable de la tête . Si la variable de tête est NULL, c'est le premier élément ajouté à la liste, définissez la variable pour pointer vers elle la tête :

     si products_head = newproduct ; 
    8

    Préparez-vous à une autre ( products_head !) variable. Dans d'autres cas , la queue variable pointe vers le dernier élément de la liste , de sorte mis sa prochaine valeur pour pointer vers le nouvel élément:

     autre products_tail - > suivant = newproduct ; 
    9

    Mise à jour de la queue pointer vers le nouveau dernier élément , dans les deux cas :

     products_tail = newproduct ; 
    accéder à la liste
    10

    Créer une autre variable temporaire pointant vers la structure de données :

     * PRODUCT_DATA produit ; 
    11

    définir la variable temporaire à la variable de la tête :

     produit = products_head ; 
    12

    boucle à travers les éléments , vérifier chacun , puis en définissant la variable temporaire à l' prochaine pointeur de traverser à la suivante : alors que

     ( produit ) { if (! produit -> product_code = 15) { produit = produit - > suivant ;}} 
    13

    Vérifier si la variable est NULL . Si c'est le cas , vous n'avez jamais trouvé l'article :

     si return 0; ( produit ) . Sinon, il pointe l'élément que vous recherchez : 
     retour produit -> product_size ; 
    Nettoyez votre travail
    14

    DEALLOCATE la liste lorsque votre programme se termine , comme tous les systèmes d'exploitation ne se chargera automatiquement cette
    15

    boucle tant que la variable de la tête n'est pas NULL : .

     while ( products_head ) { 
    16

    magasin de sa prochaine pointeur dans la variable de queue temporaire :

     products_tail = products_head - > suivant ; 
    17

    DEALLOCATE l'élément : gratuit

     ( products_head ) ; 
    18

    Placez le pointeur de la tête du pointeur que vous avez enregistré à l'étape 4 :

     products_head = products_tail ;} 
     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Comment faire un fichier MIDI en C + + 
  • Comment formater double en C 
  • Comment écrire un programme qui lit une chaîne de noms à partir d'un fichier dans C 
  • Comment faire pour envoyer des frappes à Active X Propriétés 
  • Comment faire une carte fichier de jeu en C + + 
  • Comment utiliser les tableaux de caractères à deux dimensions C 
  • Comment faire pour utiliser des algorithmes de chiffrement dans Visual C + + 
  • Comment imprimer un triangle en C 
  • Description d'une fonction C + + et comment il provoque un buffer overflow 
  • Comment utiliser getLine dans C à Skip Cin.Ignore 
  • Connaissances Informatiques © http://www.ordinateur.cc