Как скомпилировать под виндовс? - C (СИ)
Формулировка задачи:
эта програма работает под юникс, а с виндовс не могу скомпилировать. в чем проблема? помогите пожалуйста
#include <sys/types.h> #include <dirent.h> #include <string.h> #include <stdlib.h> #include <stdio.h> int EndsWith(const char *string, const char *substring) { int string_length = strlen(string); int substring_length = strlen(substring); if (string_length < substring_length) return 0; const char *string_symbol = string + string_length - substring_length; return ((strcmp(string_symbol, substring) == 0) ? 1 : 0); } void ProcessFile(const char *file_name) { if (EndsWith(file_name, ".c") || EndsWith(file_name, ".cc") || EndsWith(file_name, ".cpp") || EndsWith(file_name, ".pas")) { FILE *infile = fopen(file_name, "r"); if (infile != NULL) { int k_buffer_size = 4096; char *buffer = (char*)malloc(k_buffer_size); int lines_count = 0; while (!feof(infile)) if (fgets(buffer, k_buffer_size, infile)) ++lines_count; free(buffer); fclose(infile); printf("%s has %d line%s\n", file_name, lines_count, (lines_count > 1) ? "s" : ""); } else { fprintf(stderr, "Error reading file %s.\n", file_name); } } } void ProcessFolder(const char *folder_name) { DIR *directory; struct dirent *directory_entry; if ((directory = opendir(folder_name)) == NULL) { fprintf(stderr, "Error opening %s.\n", folder_name); return; } while ((directory_entry = readdir(directory)) != NULL) { if (strcmp(directory_entry->d_name, ".") != 0 && strcmp(directory_entry->d_name, "..") != 0) { char *subentry = (char*)malloc(strlen(folder_name) + strlen(directory_entry->d_name) + 2); strcpy(subentry, folder_name); strcat(subentry, "/"); strcat(subentry, directory_entry->d_name); if (directory_entry->d_type & DT_DIR) ProcessFolder(subentry); else if (directory_entry->d_type & DT_REG) ProcessFile(subentry); free(subentry); } } closedir(directory); } int main(int argc, char *argv[]) { if (argc == 2) ProcessFolder(argv[1]); else ProcessFolder("."); }
Решение задачи: «Как скомпилировать под виндовс?»
textual
Листинг программы
#include <dirent.h>
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д