[C] Utilisation de scandir..

Utilisation de scandir.. [C] - C - Programmation

Marsh Posté le 21-01-2004 à 19:19:48    

Slt tlm!
 
Je souhaiterai lister tout le contenu d'une arborescence
(répertoires, fichiers, sous-répertoires..) et les trier
alphabétiquement sur le nom relatif à la racine de l'arborescence.
 
J'ai vu qu'il y avait la fonction "scandir" qui permettrait
apparemment de faire ça mais je ne parviens pas à la faire
fonctionner..
Y-a-t'il des importations spéciales à faire ? (j'ai mises
celles inscrites dans le man)
Ca me fait une erreur avec alphasort quand je le met
en paramètre de la fonction "scandir"..
 
Comment utilise donc cette fonction ?
Merci.

Reply

Marsh Posté le 21-01-2004 à 19:19:48   

Reply

Marsh Posté le 21-01-2004 à 19:23:28    

Reply

Marsh Posté le 21-01-2004 à 19:28:41    

OK, merci bien mais apparemment il faut créer soi-même la fonction mise en dernier paramètre de scandir (alphasort, selon le man) ??
 
Et comme 3e paramètre, il y a d'autres possibilités ?
MercI.

Reply

Marsh Posté le 21-01-2004 à 19:30:38    

alphasort existe déjà. mais la je te donne un exemple complet

Reply

Marsh Posté le 21-01-2004 à 19:34:56    

Mais comment cela se fait-il que lorsque je mets alphasort
il me crée une arreur à la compilation (je compile avec -Wall -ansi -pedantic) ???
 
Et pour le 3e paramètre alors, si on veut tout prendre en compte on peut le mettre à 0, c'est bien ça (comme dans le man) ?

Reply

Marsh Posté le 21-01-2004 à 19:50:18    

normal, c'est flags vire tout ce qui n'est pa ansi. la tu passes dans la programmation spécifique (POSIX quand même)
 
dis toi que le C ne sait meme pas ce qu'est un dossier

Reply

Marsh Posté le 21-01-2004 à 19:52:37    

Dsl, je n'ai pas bien compris..
Bon POSIX je crois que c'est les appels de bas niveau, c'est bien ça ?
Et donc en compilant sans ça, ça devrait fonctionner ?
Je vais tester tout à l'heure.

Reply

Marsh Posté le 21-01-2004 à 20:04:01    

non POSIX c'est une norme qui unifie les différents systèmes unix
 
compile en -Wall

Reply

Marsh Posté le 21-01-2004 à 23:05:55    

--pedantic c'est réservé à taz et autres mordus du K&R ;)

Reply

Marsh Posté le 21-01-2004 à 23:07:48    

black_lord a écrit :

--pedantic c'est réservé à taz et autres mordus du K&R ;)


 
Et -pedantic-error c'est pour qui ?


Message édité par Kristoph le 21-01-2004 à 23:08:16
Reply

Marsh Posté le 21-01-2004 à 23:07:48   

Reply

Marsh Posté le 21-01-2004 à 23:10:47    

Ok, je regarde ça tout à l'heure.
Merci bien!

Reply

Marsh Posté le 22-01-2004 à 00:11:05    

le problème c'est que là on fait de la programmation système.

Reply

Marsh Posté le 22-01-2004 à 03:17:20    

OK, c'est nickel !!
Merci beaucoup.

Reply

Marsh Posté le 02-02-2004 à 22:01:34    

Par contre, j'aimerai mnt que les fichiers ne soient plus triés par ordre ASCII, mais pas ordre INVERSE de l'ordre ASCII.
Est-ce que je peux remplacer "alphasort" par une autre fonction qui existe déjà ??

Reply

Marsh Posté le 02-02-2004 à 22:05:54    

Sinon, je pense que l'on peut redéfinir une fonction qui fasse cela mais comment la créer ??
Je ne vois pas trop bien l'algo car je ne sais pas exactement ce que retourne "alphasort"..
Je pense qu'un petit strcmp pour comparer les chaînes, mais qu'est-ce qu'il faut retourner pour que scandir me mette ça en ordre inverse ??

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed