| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> C /C + + Programming >> Content
    Comment faire une fonction de file d'attente dans la syntaxe C
    programmeurs utilisent les files d'attente pour représenter des structures de données qui fonctionnent par la First In, First Out ( FIFO) directrice. Cela signifie que toutes les données entrées dans la structure vont ajouter à une liste de données , et les données qui ont été dans la liste la plus longue sera la première à être enlevé. Dans le langage de programmation C , un programmeur implémente mieux, une forme de base de cette structure en utilisant une liste chaînée et différents pointeurs de maintenir l'ordre des données. Instructions
    1

    créer la structure de nœud de données et la structure de la liste. Pour que la liste liée à fonctionner comme une queue, la liste ne doit contenir de noeuds capables de référence au noeud suivant dans la liste et deux pointeurs qui référencent le début et la fin de la liste . Ces structures montrent par exemple un modèle de base pour la liste des nœuds et la structure de file d'attente :

    struct noeud {

    des données int ;

    struct * Node prochaine ;
    < p >} ;

    struct queue_list {

    struct * premier noeud ; //pointeur vers le premier élément

    struct noeud * dernier ; //pointeur sur le dernier élément < br >

    }
    2

    implémenter un algorithme d'insertion de données. Dans une file d'attente , le programme doit toujours ajouter les données à la fin de la liste . En outre, la liste doit faire référence au dernier élément , donc insertions futures sachent sur ​​quelle extrémité à ajouter. L'exemple suivant montre un algorithme simple d'ajouter un nœud avec les données sur une file d'attente :

    void insert (struct file * q , int value) {

    struct noeud * newnode = malloc ( sizeof ( struct node) ) ;

    newnode -> data = value;

    newnode - > suivant = NULL;

    si (q- > premier == null) {

    q -> first = q -> nom = newnode ; //si la liste est vide , le premier et le dernier = newnode

    }

    else { < br >

    q- > dernier - > suivant = newnode ; q -> nom = dernier -> next //append newnode après le dernier élément

    ; //Point "dernier" pointeur vers l' nouveau nœud

    } }


    3

    implémenter un algorithme de suppression . Cet algorithme prend la valeur du premier noeud dans la liste. Ensuite, il pointera le "premier" pointeur vers le nœud suivant et supprimez le premier noeud. Cela rendra le nœud suivant la nouvelle première position sur la liste, prêt à être retiré . L'exemple suivant montre un algorithme pour effectuer cette opération:

    int remove (struct file * q ) {

    int value = q- > first - > data ;

    struct noeud * temp = q -> première ;

    q -> first = q- > first -> next ; //déplace le premier pointeur vers le prochain point

    libre (temp) ; //supprime la première valeur vieux nœud d'iPhone de

    de retour; //retourne la première valeur;

    }
    4

    déclarer et utiliser une file d'attente . Le programmeur peut déclarer une file d'attente comme variable de type " struct file d'attente " et d'utiliser les fonctions définies pour ajouter et supprimer des éléments . L'exemple suivant montre comment déclarer et utiliser une structure de file d'attente :

    int main () {

    struct file d'attente q;

    insert ( & q , 5); //utilisations une référence à "q" pour éviter les copies peu profondes

    insert ( & q , 6) ;

    int x = supprimer ( & q); //x = 5
    < br >

    Previous :

    next :
      articles connexes
    ·Comment faire un jeu RPG en C + + 
    ·Comment construire un moteur de jeu From Scratch 
    ·Comment retourner un numéro dans booléenne 
    ·Comment utiliser Int pour obtenir la couleur RVB Code 
    ·Comment inverser éléments d'un tableau en C 
    ·Comment faire un thread de travail MFC 
    ·C Fonction Types de retour 
    ·Comment utiliser la fonction strcat en C + + 
    ·Comment compiler C + + en utilisant GNU 
    ·Comment faire pour supprimer tous les non- entiers d'un…
      articles en vedette
    ·Comment faire sortir Java 
    ·Comment créer un programme C dans Visual Studio 
    ·Comment faire un bouton de réinitialisation sur VBA 
    ·Comment faire pour supprimer Histoire SVN dans Eclipse 
    ·Comment: REGEX pour analyser XML 
    ·Comment lier un objet à un GridView en code 
    ·Comment faire pour convertir Double int dans Java 
    ·Comment accéder VB requête Sélection 
    ·Comment lire des emails en utilisant PHP 
    ·Android Tools 
    Copyright © Connaissances Informatiques http://fr.wingwit.com