我想編碼一個簡單的函數來排序目錄的內容。事情是,它按字母順序排列,無論大寫還是小寫。我想按ASCII順序對這些內容進行排序。按ascii順序排序文件
例如:我得到了4個文件,命名爲Art,boat,cat和驢。我的實際代碼按照這個順序排序,而我想要得到藝術,貓,船和驢。
void list_dir(char *str){
DIR *rep = NULL;
struct dirent* read_file = NULL;
rep = opendir(str);
if (!rep)
{
ft_putstr("ft_ls: ");
perror(str);
ft_putchar('\n');
}
while((read_file = readdir(rep)) != NULL)
{
if (read_file->d_name[0] != '.')
{
ft_putstr(read_file->d_name);
ft_putchar('\n');
}
}
}
哪裏排序發生了什麼?它看起來像你只是讀一個目錄並按原樣打印。另外,你需要一個'前else'了'while' –
我不knoz,事情是,它似乎是自動的,我只是寫了這一點,它變成了排序不管它讀 –
那是因爲你是在什麼操作系統可能會對其目錄內容進行排序。你需要閱讀並分類,然後才能打印出來。 –