NOOON !
Ne jamais utiliser strtok !
strtok utilise une variable globale, il modifie la chaîne en entrée, et il n'est pas réentrant !
Si tu veux absolument utiliser une fonction du genre, il y a strtok_r ...
Mais bon sscanf fonctionne, il faut juste bien récupérer la valeur de retour pour être sûr que tout c'est bien passé sinon bonjour les plantages.
Une solution serait donc de récupérer tous les champs, et comme le deuxième contient un espace, le récupérer en DEUX champs, puis de les concaténer ... (strcat ou plutôt strncat).
Maintenant que j'y pense, c'est un peu curieux d'écrire ces données dans un fichier, ça ne se fait pas pour le reste du système. Peut être un héritage des tout débuts d'Unix ?
Oui et non ...
En fait sous Unix et GNU/Linux, le principe c'est que tout est fichier. Ainsi les périphériques, mais aussi le processeur, etc sont des fichiers... Ainsi on peut avoir accès à tout type d'information en lisant les fichiers idoines sur le système. Certains n'ont pas de représentation physique (sur le disque dur) mais existent bel et bien (au moins en RAM). C'est quand même très pratique de par exemple pouvoir lire la fréquence du CPU dans un fichier texte, ou, en l'occurrence, les systèmes de fichiers actuellement montés dans mtab ...
Moi aussi ça m'attriste, d'autant que j'ai regardé les Superman étant petit, et depuis aucun autre acteur n'a réussi à incarner pour moi Superman mieux que lui.
Et depuis son accident de cheval et son combat contre le handicap, il est devenu Superman pour de bon, son combat devenant encore plus symbolique.
Il est un peu devenu le héros qu'il incarnait à l'écran ...
Personellement j'ai du mal à comprendre le choix du C..
C'est un langage simple à apprendre, quand on programme en C on est obligé de "mettre les mains dans le cambouis", et du coup le moindre petit programme est un petit peu plus gratifiant que le même écrit dans un langage de plus haut niveau.
Le C++ c'est bien mieux, sous toutes les plate formes à mon goût,
C'est ton opinion
avec l'approche objet. M'enfin il faut l'objet dans la peau.
Mais savais-tu qu'on peut très bien faire de l'objet en C ??? Sisi, c'est même exactement ce qu'on fait quand on commence à programmer de manière structurée et normalisée. Le C++ n'offre qu'une syntaxe, au demeurant bien difficile à comprendre dans tous ses aspects, pour appliquer "plus facilement" (je veux des preuves !) le paradygme objet.
Je n'aime pas le C à cause des pointeurs,
Eh bien voilà, c'est un aveu. Mais un sacré aveu de faiblesse. Tu sais que les pointeurs existent aussi en C++ ??? Pourtant tu les ignores, c'est comme ignorer le mot-clé struct en C ... C'est débile quoi.
alors qu'en C++ j'arrive à n'en avoir presque aucun ! Grâce à la STL principalement,
Et je me demande comment tu fais ! Et même avec la STL pourtant. C'est quand même très pratique de pouvoir faire
std::vector<BaseClass*> mesObjets;
(un vecteur de pointeurs sur des objets dont la classe de base est BaseClass, du coup vivent les fonctions virtuelles et autres joyeusetés de l'héritage).
Franchement si tu ignore les pointeurs en C++, tu dois souvent couper des cheveux en quatre pour faire des choses simples.
mais n'importe quelle lib comme Qt le permet.
Je ne sais pas je n'utilise pas Qt
Ensuite, tu ne peux pas utiliser Qt en C sans bindings, et en plus il te faut une licence pour l'utiliser sous win (enfin, il me semble)
[troll]D'où l'intérêt de plutôt se pencher sur Gtk ;) [/troll]
La question c'est : "Le monde change, vous voulez prendre encore plus de retard ?"
Attention, ça c'est du discours de VRP du gouvernement.
Je sais bien que le monde change, la preuve : pour être hotliner il faut bac+2, pour être "pisseur de code" il faut bac+5 ...
Et que fait le gouvernement ?
Il cache son désintérêt des vrais problèmes du moment par une campagne de marketing, qui évidemment fait marcher à fond les moutons que nous sommes, nous autres informaticiens ...
M'enfin bon, moi mon PC quand j'étais à l'IUT, je me suis le payé avec ma paye de deux mois de travail de vacances. Maintenant, les étudiants n'ont rien à faire ou presque : souscrire un prêt à 1¤ par jour. Ce sera quoi la prochaine étape ? Que je leur offre leur PC avec mes impôts ? De toute façon, à ce moment-là, à moins qu'ils n'aillent jusqu'à bac+8, ils ne trouveront pas de boulot, et leur chômage ne sera pas payé (évidemment puisque l'argent nécessaire aura été dépensé pour leur payer des ordinateurs).
Bon je crois que je vais me prendre un bon paquet de points godwin sur ce coup-là, mais je commence à avoir l'habitude ...
Suis-je le seul à être un peu choqué par cette initiative du gouvernement ?
En effet, on dirait un VRP qui vend des portables pas cher pour cacher qu'il ne fait pas vraiment grand chose pour son ministère.
Je suis peut-être un peu rabat-joie, mais des millions d'étudiants se sont (très) bien débrouillés sans ordinateur portable, de plus il y a des salles informatiques dans toutes les facs, alors je me demande vraiment quelle est l'utilité d'une telle mesure ...
1) Pour ton disque dur, vois avec hdparm et son fichier de config j'ai nommé hdparm.conf !
2) Jette cpufreqd et installe powernowd, il marche très bien. Pour exemple, mon P4-3GHz tourne actuellement à ... 383MHz ... Ceci automatiquement en fonction de la charge bien sûr.
3) éteindre l'écran : pour quoi faire ? quand tu veux l'éteindre tu éteins ton PC, quand ton PC est allumé tu l'utilises, donc pas besoin d'éteindre l'écran (CQFD)
class A
{
private:
int a, b, c;
public:
A(int _a, int _b, int _c) : a(_a), b(_b), c(_c) {};
A(int bidule, int _a, int _b, int _c) {
a = bidule * _a;
b = bidule * _b;
c = bidule * _c;
};
}
class B : public A
{
}
int main(int argc, char* argv[])
{
B objB(2, 3, 4, 5);
<mode slurp on>
Ton commentaire est génial !
J'y apprends le pattern MVC et c'est très bien expliqué.
Et en même temps il montre une petite faiblesse du système de notation de linuxfr : j'aurai bien aimé t'intéressanter plusieurs fois de suite (même si c'est la première fois que le cas se présente à moi).
<mode slurp off>
N'importe quoi.
A partir du moment où on peut reconnaître l'oeuvre (quel que soit le type d'oeuvre), même si deux secondes suffisent (ou moins !), alors on doit payer des droits d'auteur ! Et encore heureux d'ailleurs.
Et comme le principe des sonneries de portable c'est qu'on la reconnaisse, cette oeuvre ...
[^] # Re: strtok
Posté par Florent C. . En réponse au message sscanf et expressions régulières. Évalué à 2.
Ne jamais utiliser strtok !
strtok utilise une variable globale, il modifie la chaîne en entrée, et il n'est pas réentrant !
Si tu veux absolument utiliser une fonction du genre, il y a strtok_r ...
Mais bon sscanf fonctionne, il faut juste bien récupérer la valeur de retour pour être sûr que tout c'est bien passé sinon bonjour les plantages.
Une solution serait donc de récupérer tous les champs, et comme le deuxième contient un espace, le récupérer en DEUX champs, puis de les concaténer ... (strcat ou plutôt strncat).
[^] # Re: disponible vs montés
Posté par Florent C. . En réponse au message fstab et mtab ?. Évalué à 1.
Oui et non ...
En fait sous Unix et GNU/Linux, le principe c'est que tout est fichier. Ainsi les périphériques, mais aussi le processeur, etc sont des fichiers... Ainsi on peut avoir accès à tout type d'information en lisant les fichiers idoines sur le système. Certains n'ont pas de représentation physique (sur le disque dur) mais existent bel et bien (au moins en RAM). C'est quand même très pratique de par exemple pouvoir lire la fréquence du CPU dans un fichier texte, ou, en l'occurrence, les systèmes de fichiers actuellement montés dans mtab ...
[^] # Re: Sur Présence PC
Posté par Florent C. . En réponse au journal "Piratage": un acquitement?. Évalué à 1.
[^] # Re: Télé Française 1ère
Posté par Florent C. . En réponse au journal Superman est mort :(. Évalué à 3.
Quadrilogie.
# ...
Posté par Florent C. . En réponse au journal Superman est mort :(. Évalué à 7.
Et depuis son accident de cheval et son combat contre le handicap, il est devenu Superman pour de bon, son combat devenant encore plus symbolique.
Il est un peu devenu le héros qu'il incarnait à l'écran ...
[^] # Re: en effet
Posté par Florent C. . En réponse au journal "Une pensée ébouriffante". Évalué à 1.
J'ai d'ailleurs toujours mon 800XL dans un placard :)
[^] # Re: Heu le C ?
Posté par Florent C. . En réponse au message Bien s'entourer en c, et plus si affinités. Évalué à 4.
C'est un langage simple à apprendre, quand on programme en C on est obligé de "mettre les mains dans le cambouis", et du coup le moindre petit programme est un petit peu plus gratifiant que le même écrit dans un langage de plus haut niveau.
Le C++ c'est bien mieux, sous toutes les plate formes à mon goût,
C'est ton opinion
avec l'approche objet. M'enfin il faut l'objet dans la peau.
Mais savais-tu qu'on peut très bien faire de l'objet en C ??? Sisi, c'est même exactement ce qu'on fait quand on commence à programmer de manière structurée et normalisée. Le C++ n'offre qu'une syntaxe, au demeurant bien difficile à comprendre dans tous ses aspects, pour appliquer "plus facilement" (je veux des preuves !) le paradygme objet.
Je n'aime pas le C à cause des pointeurs,
Eh bien voilà, c'est un aveu. Mais un sacré aveu de faiblesse. Tu sais que les pointeurs existent aussi en C++ ??? Pourtant tu les ignores, c'est comme ignorer le mot-clé struct en C ... C'est débile quoi.
alors qu'en C++ j'arrive à n'en avoir presque aucun ! Grâce à la STL principalement,
Et je me demande comment tu fais ! Et même avec la STL pourtant. C'est quand même très pratique de pouvoir faire
std::vector<BaseClass*> mesObjets;
(un vecteur de pointeurs sur des objets dont la classe de base est BaseClass, du coup vivent les fonctions virtuelles et autres joyeusetés de l'héritage).
Franchement si tu ignore les pointeurs en C++, tu dois souvent couper des cheveux en quatre pour faire des choses simples.
mais n'importe quelle lib comme Qt le permet.
Je ne sais pas je n'utilise pas Qt
Ensuite, tu ne peux pas utiliser Qt en C sans bindings, et en plus il te faut une licence pour l'utiliser sous win (enfin, il me semble)
[troll]D'où l'intérêt de plutôt se pencher sur Gtk ;) [/troll]
[^] # Re: Suis-je le seul ?
Posté par Florent C. . En réponse à la dépêche Portable à 1 euro par jour : aussi sous GNU/LINUX. Évalué à -3.
Attention, ça c'est du discours de VRP du gouvernement.
Je sais bien que le monde change, la preuve : pour être hotliner il faut bac+2, pour être "pisseur de code" il faut bac+5 ...
Et que fait le gouvernement ?
Il cache son désintérêt des vrais problèmes du moment par une campagne de marketing, qui évidemment fait marcher à fond les moutons que nous sommes, nous autres informaticiens ...
M'enfin bon, moi mon PC quand j'étais à l'IUT, je me suis le payé avec ma paye de deux mois de travail de vacances. Maintenant, les étudiants n'ont rien à faire ou presque : souscrire un prêt à 1¤ par jour. Ce sera quoi la prochaine étape ? Que je leur offre leur PC avec mes impôts ? De toute façon, à ce moment-là, à moins qu'ils n'aillent jusqu'à bac+8, ils ne trouveront pas de boulot, et leur chômage ne sera pas payé (évidemment puisque l'argent nécessaire aura été dépensé pour leur payer des ordinateurs).
Bon je crois que je vais me prendre un bon paquet de points godwin sur ce coup-là, mais je commence à avoir l'habitude ...
# Suis-je le seul ?
Posté par Florent C. . En réponse à la dépêche Portable à 1 euro par jour : aussi sous GNU/LINUX. Évalué à 10.
En effet, on dirait un VRP qui vend des portables pas cher pour cacher qu'il ne fait pas vraiment grand chose pour son ministère.
Je suis peut-être un peu rabat-joie, mais des millions d'étudiants se sont (très) bien débrouillés sans ordinateur portable, de plus il y a des salles informatiques dans toutes les facs, alors je me demande vraiment quelle est l'utilité d'une telle mesure ...
[^] # Re: Paranoïaques de tous les pays, protégez vous!
Posté par Florent C. . En réponse au journal Paranoïaques de tous les pays, protégez vous!. Évalué à 1.
# Autres réponses
Posté par Florent C. . En réponse au message laptop gestion de l'économie de l'énergie (speedstep, suspend-to-disk, acpi etc...). Évalué à 2.
2) Jette cpufreqd et installe powernowd, il marche très bien. Pour exemple, mon P4-3GHz tourne actuellement à ... 383MHz ... Ceci automatiquement en fonction de la charge bien sûr.
3) éteindre l'écran : pour quoi faire ? quand tu veux l'éteindre tu éteins ton PC, quand ton PC est allumé tu l'utilises, donc pas besoin d'éteindre l'écran (CQFD)
[^] # Re: Paranoïaques de tous les pays, protégez vous!
Posté par Florent C. . En réponse au journal Paranoïaques de tous les pays, protégez vous!. Évalué à 2.
"Ce n'est pas parce que je suis parano que vous n'êtes pas tous après moi !!"
[^] # Re: oui fi
Posté par Florent C. . En réponse au message (re)Programmer un driver pour carte Wifi NetGear MA521. Évalué à 1.
Cela dit, des drivers linux seraient plus que bienvenus :)
# ma touche min lock est coincée ...
Posté par Florent C. . En réponse à la dépêche JOURNÉE NATIONALE DU CAPS LOCK. Évalué à 4.
# Ben oui, c'est le principe de la prog objet quand même ...
Posté par Florent C. . En réponse au message Héritage et constructeurs. Évalué à 1.
[^] # Re: condition de liberation
Posté par Florent C. . En réponse à la dépêche Blender 2.34 est sorti. Évalué à 4.
# Et le jardinage ?
Posté par Florent C. . En réponse au sondage Mon activité favorite pendant les vacances. Évalué à 2.
# Apprendre l'anglais ?
Posté par Florent C. . En réponse au message ogg -> mp3. Évalué à 3.
[^] # Re: Re :
Posté par Florent C. . En réponse au journal Problème de conception pour un jeu. Évalué à 2.
Ton commentaire est génial !
J'y apprends le pattern MVC et c'est très bien expliqué.
Et en même temps il montre une petite faiblesse du système de notation de linuxfr : j'aurai bien aimé t'intéressanter plusieurs fois de suite (même si c'est la première fois que le cas se présente à moi).
<mode slurp off>
[^] # Re: Et les çonneries ?
Posté par Florent C. . En réponse au journal Droits d'auteur: tout baigne pour la SACEM. Évalué à 1.
A partir du moment où on peut reconnaître l'oeuvre (quel que soit le type d'oeuvre), même si deux secondes suffisent (ou moins !), alors on doit payer des droits d'auteur ! Et encore heureux d'ailleurs.
Et comme le principe des sonneries de portable c'est qu'on la reconnaisse, cette oeuvre ...
[^] # Re: Tutorial
Posté par Florent C. . En réponse au journal Hugin et enblend sur un bateau, l'un d'eux tombe à l'eau.... Évalué à 2.
[^] # Re: Tutorial
Posté par Florent C. . En réponse au journal Hugin et enblend sur un bateau, l'un d'eux tombe à l'eau.... Évalué à 2.
Grumpf ... il fallait que ça tombe sur moi !!!
[^] # Re: Hyper Caricatural
Posté par Florent C. . En réponse au journal Politique en deux dimensions.. Évalué à 3.
[^] # Re: Tutorial
Posté par Florent C. . En réponse au journal Hugin et enblend sur un bateau, l'un d'eux tombe à l'eau.... Évalué à 2.
(gdb) run -v test.tif -o final.tif
Starting program: /usr/bin/enblend -v test.tif -o final.tif
(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...TIFF Page: test.tif size 2240x1738, res 1x1, offset 2177x0
TIFF Page: test.tif size 2251x1754, res 1x1, offset 3252x33
TIFF Page: test.tif size 2243x1743, res 1x1, offset 4404x28
Output image size: 4470 x 1787
Combining non-overlapping pages: (test.tif, 0)
Program received signal SIGSEGV, Segmentation fault.
0x401c7c73 in mallopt () from /lib/tls/libc.so.6
(gdb) bt
#0 0x401c7c73 in mallopt () from /lib/tls/libc.so.6
#1 0x400303d6 in TIFFClose () from /usr/lib/libtiff.so.3
Previous frame inner to this frame (corrupt stack?)
(gdb)
Cela vient-il vraiment de enblend ? ou bien j'ai une version buggée de la libtiff ??? Je vais essayer de la mettre à jour ...
[^] # Re: Mais COMMENT on l'installe ?
Posté par Florent C. . En réponse au journal Hugin et enblend sur un bateau, l'un d'eux tombe à l'eau.... Évalué à 2.