
| Page 1 | |||||
| Pseudo | Commentaire | ||||
|---|---|---|---|---|---|
| Page 1 | |||||
Sergeswi
|
# Posté le 20/10/2009 à 20:50:28 | ||||
SErGeSWI = 614,77 g/mol![]()
Ville : Perpignan |
J'ai survolé le tutoriel, c'est sympathique . Bon ça me concerne pas trop mais ça semble bien . Par contre, je sais pas si tu as le droit d'utiliser une image source de Windows, non ?
|
||||
Grinwik
|
# Posté le 20/10/2009 à 21:51:04 | ||||
"Ca passait, c'était beau !"![]()
Ville : Talence |
Beau travail. Bonne initiative pour errno =) Quelques remarques cependant : -> A quoi sert l'argument rep de la fonction parcourirDossier() ? -> Code : C
Même chose : rep ne sert pas à grand chose; de même que le closedir() vu que le pointeur ne peut pas être modifié. -> isDir() bien, ça dépanne ![]() Mais, en particulier sous unixoide, il est courant qu'un fichier n'ait pas d'extension. Si tu n'as pas envie de développer ici, soit, mais je pense que parler un peu de stat() pourrait être sympa. -> Citation : dirent est un standard pour UNIX qui a été porté pour Windows par la suite. Manque-t-il un mot ? dirent.h est un header standard. -> Premier QCM : Citation : Quel est le problème dans ce code : return 1;
|
||||
TuxWeb
|
# Posté le 20/10/2009 à 22:36:45 | ||||
GPG key ID : 4BE9852B![]() |
Bon tuto ![]() Mais j'aurais plutôt tendance à faire : Code : C
pour tester si un fichier est un dossier ou non, car un fichier peut très bien ne pas avoir d'extension (du moins, sous Linux...) Citation : Emmanuel KANT Je n'ai pas besoin de penser pourvu que je puisse payer ; d'autre se chargeront bien de cette besogne. |
||||
spider-mario
|
# Posté le 21/10/2009 à 07:53:02 | ||||
![]()
Ville : Montigny-lès-cormeilles |
Citation : Le tuto Mauvaise réponse Pourquoi on ne considère pas dirent.h comme portable ? Mauvaise réponse : dirent.h est portable. La bonne réponse était : À la base, c'est un header pour UNIX, mais il a été porté pour Windows. Explications : Relisez le début du chapitre ! dirent.h est un header sous la norme POSIX, qui est une norme standard pour les sytèmes UNIX. Il a été porté pour Windows par la suite. ![]() Le résultat, c'est qu'il est portable, c'est ce qui compte... Qt a d'abord été développé pour Windows et Unix, le support de Mac OSX n'est apparu qu'avec Qt3, pourtant on considère Qt comme portable sur ces trois plateformes. |
||||
glator
|
# Posté le 21/10/2009 à 10:58:18 | ||||
|
études : Polytech'Montpellier |
Bon tuto, cependant quelque chose me gène, au niveau de la fonction isDir(): un répertoire peut très bien avoir un nom comme "photo.jpg", la fonction n'est donc pas fiable a 100%. Voilà la fonction la plus simple que j'ai trouvé: Code : C
|
||||
Peaker
|
# Posté le 21/10/2009 à 12:48:26 | ||||
Shit happens![]()
Ville : Genève |
Bon tuto et fort pratique... Moi qui me démenait depuis plusieurs heures sur <dirent.h> BOUM un nouveau tutoriel... ![]() EDIT : une petite remarque : pour vérifier si il s'agit d'un fichier ou d'un dossier tu dit : Citation : Monsieur_JaKy Vérifier si le nom du fichier a une extension (.jpg, .mp3, etc.). Les dossiers peuvent aussi contenir des points ! A+ |
||||
Falco252
|
# Posté le 21/10/2009 à 13:03:29 | ||||
My Life for Aiur !![]()
|
Serge : http://www.siteduzero.com/tutoriel-3-1 [...] allation.html
<vista> aider moi svp <vista> comment je peux downgrade ma 2.81 <%meuhlavache> vista: t'sa un pote avec une psp déjà downgrader ? <vista> un pote? <%meuhlavache> t'as pas de pote vista ? <vista> c koi un pote stp? |
||||
Chlab_lak
|
# Posté le 21/10/2009 à 16:31:02 | ||||
Tendou![]()
études : Ecole Supérieure de l'ETML |
Citation : Grinwik mais je pense que parler un peu de stat() pourrait être sympa. Essentiel
Teeworlds: Joueur et ancien hébergeur sur la version 0.4.3 Developpez.com : FAQ C++ | Boost.org : La bibliothèque des programmeurs C++ | Siteduzero.com : Charte du forum C++ | Wikibooks.org : Tous les idiomes du C++ | Gotw.ca : Les archives des "Guru of the Week" | Crossbowlabs.com : Principes avancés de conception objet | H-deb : Site d'un professeur | Fclc++ : Un forum C++ avancé | Roguewave.com : Documentation C++ | Dinkumware.com : Documentation C++ |
||||
Nyxem
|
# Posté le 21/10/2009 à 19:13:30 | ||||
Ou pas.![]()
|
Sur certains OS y a une macro pour savoir si le fichier est un répertoire -> S_ISDIR(mode_t mode)
Plus tu pédales moins fort, moins t'avances plus vite. --> mon blog (Mac OS, Prog, Sécu) <-- --> Forcer le boot en 64-bit sous Snow Leopard <-- |
||||
Loadware
|
# Posté le 21/10/2009 à 20:27:20 | ||||
Biozazard!![]()
Ville : Niderviller |
merci pour ce tuto! j'avais essayé de lire plusieurs fois la doc en anglais sur dirent.h mais c'est... comment dire? horrible
Envie de faire du logiciel libre sans utiliser les licences GNU ou BSD ? Pensez à la licence française de logiciel libre CeCILL! |
||||
Zaïmone
|
# Posté le 21/10/2009 à 22:54:51 | ||||
|
Ville : Talence |
Tu devrais changer l'icône du tuto. Quand j'ai vu un dossier window$, je me suis dit d'office "Ce tuto n'est pas pour moi !" alors qu'en fait tu parle d'un header. Bon tuto BTW ! ;-) |
||||
Animaluxe
|
# Posté le 22/10/2009 à 06:42:24 | ||||
Le ; Et tout va...![]()
Ville : Basillac |
Pouvez-vous donner des explications supplémentaire s'il vous plaît? Je n'ai pas compris certaines parties alors plus d'informations ne seraient pas de trop!
|
||||
Algo-rythme
|
# Posté le 22/10/2009 à 07:05:48 | ||||
Qu'est-ce qu'on mange ?![]()
|
Code : C
Il est possible qu'un fichier n'ai aucune extension. À part ça, excellent tutorial. Je me posait la question depuis beaucoup de temps. Merci ! 19/20 Citation : ZéroNumberZéro Les dossiers peuvent aussi contenir des points !
|
||||
Chlab_lak
|
# Posté le 22/10/2009 à 18:57:59 | ||||
Tendou![]()
études : Ecole Supérieure de l'ETML |
Citation : Nyxem Sur certains OS y a une macro pour savoir si le fichier est un répertoire -> S_ISDIR(mode_t mode) S_ISDIR() sous unix et _S_ISDIR() sous win si mes souvenirs sont bons. Cela implique une utilisation de stat() (_stat() sous win)
Teeworlds: Joueur et ancien hébergeur sur la version 0.4.3 Developpez.com : FAQ C++ | Boost.org : La bibliothèque des programmeurs C++ | Siteduzero.com : Charte du forum C++ | Wikibooks.org : Tous les idiomes du C++ | Gotw.ca : Les archives des "Guru of the Week" | Crossbowlabs.com : Principes avancés de conception objet | H-deb : Site d'un professeur | Fclc++ : Un forum C++ avancé | Roguewave.com : Documentation C++ | Dinkumware.com : Documentation C++ |
||||
Rykyu
|
# Posté le 23/10/2009 à 09:40:28 | ||||
Ne peut pas plaire à tous![]()
|
Je n'ai pas pu aller bien loin dans le tuto, vu que je me suis heurté à ce petit problème... Une solution ? Je trouvais mes messages vides, sans signature... |
||||
Monsieur_JaKy
|
# Posté le 23/10/2009 à 19:17:26 | ||||
JaKy & Rory FTW!![]()
Ville : Bourges |
Désolé à tous, j'avais totalement oublié qu'un fichier sous Linux n'avais pas forcément d'extension Je ne connaissais pas la fonction stat(), je vais me documenter la dessus et en parler un peu dans un prochain EDIT J'avais aussi oublié que les dossiers pouvaient contenir des points, j'ai tout faux Grinwik > - Concernant le dernier exercice, tout à fait c'est inutile de repasser rep à chaque fois - Merci pour l'oubli - Merci aussi, j'utiliserais EXIT_FAILURE spider-mario > Il y a tout de même une différence entre Qt et dirent.h : Qt n'est sous aucune norme (?), alors que dirent.h sous POSIX. Rykyu > J'ai faux une fois de plus J'essayerais d'expliquer comment faire dans un prochain edit.Merci à tous pour vos commentaires
|
||||
spider-mario
|
# Posté le 24/10/2009 à 13:36:48 | ||||
![]()
Ville : Montigny-lès-cormeilles |
Citation : Monsieur_JaKy Il y a tout de même une différence entre Qt et dirent.h : Qt n'est sous aucune norme (?), alors que dirent.h sous POSIX. Je ne vois vraiment pas ce que ça change. dirent.h est sous norme POSIX, Qt est sous norme... "Qt". Aucune ne fait partie du C standard, pourtant Qt est considérée comme portable et dirent.h ne l'est pas dans le QCM. Y a-t-il la moindre explication à cela, excepté le fait que "ça a été porté sous Windows plus tard" ? Ça a forcément été réécrit d'un système à l'autre, comme le code de n'importe quel header, qu'il soit ANSI, POSIX... |
||||
Fredos
|
# Posté le 24/10/2009 à 18:44:42 | ||||
![]()
Ville : Sartrouville |
Très bon tuto agréablement rédigé, dommage pour les quelques fautes déjà relevées qui seront bientôt corrigées je pense. | ||||
Algo-rythme
|
# Posté le 26/10/2009 à 20:01:17 | ||||
Qu'est-ce qu'on mange ?![]()
|
Citation : JaKy Désolé à tous, j'avais totalement oublié qu'un fichier sous Linux n'avais pas forcément d'extension Tu peux aussi mettre aucune extension sous windows aussi. Il suffit de modifier les option d'affichage de nom des fichiers pour que windows affiche les extentions et de renommer le fichier. |
||||
LohGeek
|
# Posté le 26/10/2009 à 22:57:48 | ||||
|
|
Grand Merci, c'était rapide, clair et indolore . J'ai ainsi pu débloquer un gros problème sur un de mes programmes...>
|
||||
Wotan
|
# Posté le 31/10/2009 à 22:47:48 | ||||
![]()
|
Super tutoriel, très utile sa faisait longtemps que j'en cherchait un, merci =) | ||||
ARMAG3DON
|
# Posté le 11/11/2009 à 18:16:32 | ||||
![]()
|
Salut a tous En fait je tiens à féliciter M_JaKy parceque je charchais partout comment utiliser dirent.h ![]() ... ...:euh:Mais voilà, j'ai quand meme du mal à l'utiliser sous Visual et sous C::Blocks (beaucoup moins de mal en utilisant la Console),& ce que j'essaye de faire , c'est l'utiliser avec la SDL... mé j'y arrive pas. Alors si quelqu'un sais comment faire, je lui demanderais bien de m'aider... Merci d'avance & A+ |
||||
Bladiest
|
# Posté le 25/11/2009 à 15:35:12 | ||||
Libre... Toujours !![]()
études : CESI Paris |
Plus sur la forme que sur le fond : Y a beaucoup de smiley !
Si je t'attends pour partir et si tu m'attends également, alors on est pas arriver ! |
||||
DocSkineur
|
# Posté le 30/11/2009 à 12:57:18 | ||||
|
Ville : Seyssins |
Bonjour, Dans le tuto il y a ecrit dans la partie consacré à errno : "Si la chaîne envoyée à perror est nulle, alors les deux points ne seront pas imprimés. Mais si vous envoyez une chaîne de caractères non nulle, ils le seront." C'est pas tellement vrai, les deux points en plus apparaissent simplement parcque la chaine envoyée contient deux points : En écrivant : Code : C
Faites le test en envoyant une chaine contenant uniquement un espace, on voit bien qu'il y a deux points. Par contre il est vrai que si la chaine envoyé est nul, aucun deux points n'apparait. Bon c'est pas super important mais je trouvait ça bizarre. En dehors de ca c'est un exelent tuto, clair, vivant avec de bon exemples. Bravo! Secret (cliquez pour afficher) 20/20 |
||||
max840
|
# Posté le 06/12/2009 à 03:54:26 | ||||
Mac 4 ever![]()
|
Moi ça ne marche pas le code pour voir si c'est un dossier. J'ai fais un copier/coller du code dans le tuto et ça ne marche pas.
![]() ![]() ![]() ![]() |
||||
geekologue
|
# Posté le 19/12/2009 à 00:20:13 | ||||
|
|
Salut, Bon tuto. J'ai quelques remarques concernant la partie Exercices : le nom d'un répertoire peut contenir des points, une solution : Code : C
pour la fonction qui compte le nombre de fichiers, tu fait autant de tests qu'il y a de fichiers. Pourquoi pas soustraire 2 à la fin ? Memorable quotes :
|
||||
Fort en pommes
|
# Posté le 03/02/2010 à 15:03:23 | ||||
![]()
|
Très bon tutoriel, c'est pile ce que je cherchais en parallèle de mes lectures sur le C. J'ai une petite question sur l'exercice "Compter le nombre de fichiers". Une fois que la fonction est crée, comment récupère-t-on le nombre de fichiers contenu dans le répertoire? En tant que gros débutant en C, je pensais faire un printf("%d",compterFichier), mais cela me renvoie "2293584" alors que j'ai seulement 8 fichiers dans mon répertoire... Où est mon erreur les Zéros?
|
||||
Le Site du Zéro vous proposera bientôt de nouveaux cours partant de Zéro dans d'autres domaines que l'informatique !

