Recoder ls (linux) en c

bibounder -  
Sugel Messages postés 4076 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'ai un projet a réaliser, le but étant de recoder la commande "ls" présent sous linux.
OK ce sujet a déjà été traiter dans d'autres topics, mais le problème c'est que nous n'avons pas le droit d'utiliser printf, scanf et toutes les autre fonction qui nous simplifierais la vie.
Je ne sais absolument pas par où commencer. Merci d'avance.
A voir également:

4 réponses

fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Bonjour,

Il faudrait voir exactement ce à quoi tu as le droit...
Fonction système (genre read()) ? Quelques fonctions standard (genre fread()) ?
Etc.
Cdlt,
0
sambia39 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   49
 
Bonsoir
Pour commencer "LS" n'est pas une fonction mais bien un programme que l'on appelle pour lister un répertoire et qui prend des arguments et si d'autre fonction vous sont interdite alors vous utiliser write par exemple
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Personne a dit que ls était une fonction ;-).
Après faut voir si fwrite() ou write() est autorisé...
Et d'autres aussi genre readdir() et Cie.
0
sambia39 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   49
 
Pas faut :-)
mais bon si c'est juste printf et compagnie à ne pas utilise le reste est autoriser
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Tout dépend de ce que comprend "compagnie"... Je pense notamment aux fonctions système
0
sambia39 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   49
 
Alors si c'est le cas passons par la fonction
int printk()

mais attention celle-ci est pour réserver pour le système lui-même ont le noyau les driver etc.
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Si les fonctions systèmes sont autorisées, alors utiliser la fonction write() qui a le mérité d'être POSIX. D'où mon tout premier post :-))).
0
Sugel Messages postés 4076 Date d'inscription   Statut Membre Dernière intervention   727
 
Toi, tu est à epitech, toi !

commence par recoder getchar et putchar, fonctions qui te permettent respectivement d'obtenir et d'afficher un caractère.

Puis, cherche du côté des API système, pour lister un dossier.

Enfin, il faudra bosser avec des structures et listes chaînées ...

Je te laisse chercher !
0
Thomato87 Messages postés 107 Date d'inscription   Statut Membre Dernière intervention   16
 
A Epitech on a déjà rendu ce sujet, je pense qu'il est plutôt de 42 ;)
0
Sugel Messages postés 4076 Date d'inscription   Statut Membre Dernière intervention   727
 
possible !
0