I was trying to write the source for ls, and i was able to come this far,
#include<stdio.h>
#include<string.h>
#include<dirent.h>
#include<sys/types.h>
int ls_on_dir(char *);
int print_aggr_fail_list(char **);
int main(int argc, char ** argv)
{
int exit_status; char **fail_list = NULL;
if (argc-- == 1) return (ls_on_dir("."));
else do {
exit_status = ls_on_dir(++argv);
if (exit_status) fail_list++ = argv;
}while (--argc > 0);
print_aggr_fail_list(fail_list);
return (0);
}
int ls_on_dir(char *direc) {
DIR *dir_ptr; struct dirent *direcp_ptr;
if ((dir_ptr = opendir(direc)) == NULL) return (1);
else {
while (direcp_ptr = readdir(dir_ptr))
printf("%s\t", direcp_ptr->d_name);
closedir(dir_ptr);
}
return (0);
}
But i get an invalid lvalue assignment at line 24. Can't seem to figure it out.Thank you.
Edited by v0id, 27 September 2008 - 04:17 AM.
Remember code-tags!


Sign In
Create Account

Back to top









