comparison kmbscreens/randfile.c @ 93:e5ea19b94639

add kmb screens bot stuff committer: GitHub <noreply@github.com>
author Paper <37962225+mrpapersonic@users.noreply.github.com>
date Thu, 04 Aug 2022 05:26:54 -0400
parents
children
comparison
equal deleted inserted replaced
92:96b9e046f45d 93:e5ea19b94639
1 #include <stdio.h>
2 #include <dirent.h>
3 #include <stdlib.h>
4 #include <time.h>
5
6 int main(void) {
7 srand((unsigned)time(NULL));
8 DIR *d;
9 struct dirent *dir;
10 d = opendir("E:\\Movies\\Anime\\Kill Me Baby");
11 int count = 0;
12 char** ret = NULL;
13 if (d) {
14 while ((dir = readdir(d)) != NULL) {
15 char* dot = strrchr(dir->d_name, '.');
16 if (dot && !strcmp(dot, ".mkv")) {
17 ret = realloc(ret, (count+1)*sizeof(char*));
18 if (ret == NULL) return 1;
19 ret[count] = calloc(strlen(dir->d_name), sizeof(char));
20 if (ret[count] == NULL) { free(ret); return 2; }
21 strncpy(ret[count], dir->d_name, strlen(dir->d_name)*sizeof(char));
22 ret[count][strlen(dir->d_name)] = '\0';
23 count++;
24 }
25 }
26 closedir(d);
27 }
28 printf("%s\n", ret[rand() % count]);
29 for (int i = 0; i < count; i++)
30 free(ret[i]);
31 free(ret);
32 return 0;
33 }