Container et extraction infos fichier système

barnasanta Messages postés 2 Date d'inscription lundi 9 février 2009 Statut Membre Dernière intervention 23 décembre 2009 - 23 déc. 2009 à 12:12
uaip Messages postés 1466 Date d'inscription mardi 20 février 2007 Statut Membre Dernière intervention 7 février 2011 - 27 déc. 2009 à 02:35
Bonjour,
Voila j'aurai un petite question a vous poser par rapport au container. En fait, j'ai besoin de récupérer différentes informations qui sont produites par le sysèteme (Linux), et je pense que les containers sont idéals pour cela.
Explication : en fait les informations que je souhaite récupérer sont par exemple les informations de chaque coeur du CPU ... que l'on peut trouver dans /proc/stat.
Seulement, les informations sont débité de la manière suivante :

cpu 131642 1095 10920 2118199 4367 563 0
cpu0 66376 470 5471 1058596 2207 280 0
cpu1 65266 624 5449 1059602 2160 282 0
...

Ce que je souhaiterai ... c'est faire un programme en c++, qui récupère chaque ligne dans un container ... pour ensuite pouvoir le réutiliser et en faire des calculs. Pensez vous que c'est possible ?

2 réponses

BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 103
23 déc. 2009 à 13:55
Hello,
Quel genre de container penses-tu utilisé?
Tu peux combiné map et vector a priori: map<string,vector>
Une entrée de la map correspondra à une ligne, avec le nom du cpu et la liste qui suit


@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
uaip Messages postés 1466 Date d'inscription mardi 20 février 2007 Statut Membre Dernière intervention 7 février 2011
27 déc. 2009 à 02:35
Salut,

Si tu es en C++, c'est pas dans la rubrique C qu'il faut poster...

Si tu veux juste stocker les données ligne par ligne, vector suffirait. Si, comme dit buno, tu veux stocker ligne par ligne en séparant par ex le nom du cpu et le reste, il faut 2 conteneurs, ou bien faire une structure et un conteneur, du style :
struct {
    string name;
    int list[7];
} TLine;
vector <TLine*> data;


Par contre, la proposition de buno utilise 3 classes de la STL, je fais peu de C++ mais ça me parait beaucoup pour ça (surtout quand on sait comment est gérée la mémoire...).
Après réflexion, sans doute que map a des propriétés avantageuses que je ne connais pas, comme l'association nom du cpu / liste.

Cordialement, uaip.
0
Rejoignez-nous