J'ai un buffer de taille 2000, les données à insérer sont illimitées. Je veux, les données plus de 2000 devraient être ajoutées à partir de la fin du tampon, c'est-à-dire pousser toutes les données de droite à gauche et insérer de nouvelles données à la fin du tampon. Alors, quel genre d'algorithme ou de flux je devrais essayer?Gestion des tampons en c
-2
A
Répondre
2
Vous souhaitez utiliser un FIFO ou un 'tampon circulaire'. Voir http://en.wikipedia.org/wiki/Circular_buffer pour une explication complète, ou même un exemple de code.
En fonction de vos besoins réels, la mise en œuvre peut être différente. Si, par exemple, vous devez toujours accéder séquentiellement aux 2 000 éléments, vous pouvez omettre le pointeur de lecture (car il s'agit toujours d'un élément derrière le pointeur d'écriture).
Editer: La file d'attente est quelque chose de similaire. Si vous utilisez C++, envisagez http://www.cplusplus.com/reference/stl/queue/
Questions connexes
- 1. Gestion de plusieurs tampons dans C
- 2. en c et tampons
- 3. Vecteur de tampons en C++
- 4. gestion des exceptions en C++
- 5. Gestion des interruptions en C++
- 6. Gestion des erreurs en C++
- 7. gestion des événements en C++
- 8. Gestion des événements en C#
- 9. Gestion des processus en C++
- 10. "Tampons n'ont pas été créés" ... tout en créant des tampons
- 11. Gestion des exceptions C# en C++/CLI
- 12. Tableau de tampons en programmation C?
- 13. Tampons de rinçage dans C
- 14. 2D Anneaux tampons dans C
- 15. Gestion des paquets TCP abandonnés en C#
- 16. Gestion des exceptions globales en C++
- 17. Gestion des données empaquetées en utilisant C#
- 18. Gestion des conditions de course en C#
- 19. Gestion des fichiers operetions en C
- 20. Gestion des exceptions d'unité centrale en C++
- 21. Module Apache Gestion des formulaires en C
- 22. Gestion des exceptions générales en C#
- 23. Gestion des fichiers de ressources en C++
- 24. Gestion des fichiers en C. Autres commandes?
- 25. Gestion des événements en C++/CLI
- 26. Gestion des événements/interruptions personnalisés en C++
- 27. C (Gestion des fichiers)
- 28. C# Gestion des exceptions
- 29. Réinitialisation des tampons dans Vim
- 30. Gestion des exceptions en C sans C++ sous Linux