9511_project01

project 1 for algorithms & programming I (9511) prof. Cardozo
Index Commits Files Refs README
commit 113047735e446135f1800ee9fd535c0e4113a31a
parent d59dcb03f6b9c55468c756c246ac281974c6c491
Author: klewer-martin <martin.cachari@gmail.com>
Date:   Wed,  3 Feb 2021 18:24:25 -0300

Updated source code & Makefile;

Diffstat:
MMakefile | 2+-
Marguments.c | 11++++-------
Marguments.h | 10++++++++--
Mload_country_codes.c | 10+++++-----
Mmain.c | 9+++------
Mreadlines.c | 10+---------
Mreadlines.h | 12+++++++++---
7 files changed, 31 insertions(+), 33 deletions(-)
diff --git a/Makefile b/Makefile
@@ -1,5 +1,5 @@
 CC = gcc
-CFLAGS = -std=c99
+CFLAGS = -std=c99 -Wall -pedantic
 
 all: main clean
 
diff --git a/arguments.c b/arguments.c
@@ -1,11 +1,5 @@
 #include "arguments.h"
 
-#define INPUT_ARGUMENT_FOUND_MSG     "Encontre un '-in'\n"
-#define OUTPUT_ARGUMENT_FOUND_MSG     "Encontre un '-out'\n"
-
-#define INPUT_FILE_NAME_MSG     "\t -> Archivo de entrada: "
-#define OUTPUT_FILE_NAME_MSG     "\t -> Archivo de salida: "
-
 //    Valida que los argumentos esten correctos y guarda los nombres de los 
 //    archivos de entrada y salida en src y dest respectivamente;
 status_t validate_arguments(int argc, char * argv[], char * src, char * dest)
@@ -38,6 +32,8 @@ status_t validate_arguments(int argc, char * argv[], char * src, char * dest)
 
 //            Marca el archivo de entrada como encontrado;
             inputFile = OK;
+
+//        Procede de la misma forma pero para OUTPUT_ARGUMENT ('-out');
         } else if(!strcmp(argv[i], OUTPUT_ARGUMENT)) {
             printf(OUTPUT_ARGUMENT_FOUND_MSG);
             if(!strcmp(argv[i + 1], INPUT_ARGUMENT))
@@ -49,7 +45,8 @@ status_t validate_arguments(int argc, char * argv[], char * src, char * dest)
         }
     }
 
-//    Return error if it could get input or output file names;
+//    Si uno o ambos de los argumentos no se encontro entonces imprime un codigo 
+//    de error;
     if((inputFile && outputFile) != OK)
         return IO_FILE_NOT_FOUND;
 
diff --git a/arguments.h b/arguments.h
@@ -1,8 +1,14 @@
+#ifndef ARGUMENTS_H
+#define ARGUMENTS_H
+
 #include "main.h"
 #include "macros.h"
 
-#ifndef ARGUMENTS_H
-#define ARGUMENTS_H
+#define INPUT_ARGUMENT_FOUND_MSG     "Encontre un '-in'\n"
+#define OUTPUT_ARGUMENT_FOUND_MSG     "Encontre un '-out'\n"
+
+#define INPUT_FILE_NAME_MSG     "\t -> Archivo de entrada: "
+#define OUTPUT_FILE_NAME_MSG     "\t -> Archivo de salida: "
 
 void print_error(status_t error);
 
diff --git a/load_country_codes.c b/load_country_codes.c
@@ -38,11 +38,11 @@ status_t empty_country_codes(char country_codes[COUNTRIES_NUMBER][ARRAYS_LENGTH]
 }
 
 
-// Abre el archivo "COUNTRY_CODES_FILE_NAME" y lee linea por linea hasta llegar
-// al final, mientras lee lo va guardando en un buffer que recorre caracter por
-// caracter en busqueda de el character separador de datos, en este caso ',', 
-// mientras recorre el buffer va separando los datos y los guarda en la variable
-// que corresponda;
+//    Abre el archivo "COUNTRY_CODES_FILE_NAME" y lee linea por linea hasta llegar
+//    al final, mientras lee lo va guardando en un buffer que recorre caracter por
+//    caracter en busqueda de el character separador de datos, en este caso ',', 
+//    mientras recorre el buffer va separando los datos y los guarda en la variable
+//    que corresponda;
 status_t load_country_codes(char country_codes[COUNTRIES_NUMBER][ARRAYS_LENGTH])
 {
     FILE *fp;
diff --git a/main.c b/main.c
@@ -11,14 +11,12 @@
 //    Lee texto de un archivo con extension .csv cuyo nombre recibe 
 //    como argumento; el cual contiene solo numeros que representan 
 //    un pais, una fecha y una cantidad de infectados y lo guarda en
-//    un archivo de extension .csv que tambien recibe como argumento,
-//    si no recibe un archivo de salida crea uno con el nombre por
-//    defecto 'output.csv';
+//    un archivo de texto cuyo nombre tambien recibe como argumento.
 
 
 #include "main.h"
-#include "arguments.h"
 #include "macros.h"
+#include "arguments.h"
 #include "load_country_codes.h"
 #include "readlines.h"
 
@@ -26,8 +24,7 @@
 int main(int argc, char * argv[])
 {
 
-//    Esta variable es para guardar los codigos de error en
-//    caso de que haya alguno;
+//    Esta variable es para guardar los codigos de error;
     status_t st;
 
 //    Las siguientes variables son para guardar los nombres de los archivos de 
diff --git a/readlines.c b/readlines.c
@@ -1,16 +1,8 @@
 //    Lee el archivo de entrada y va separando los datos mientras va leyendo linea
 //    por linea, y los va imprimiendo en pantalla
 
-
 #include "readlines.h"
 
-#define COUNTRY_PROMPT "Pais"
-
-#define SIZE_OF_BUFF1    32
-#define SIZE_OF_BUFF2    32    
-
-const char date_print_format[] = "%d %b %Y";
-
 status_t readlines(char *src, char *dest)
 {
     size_t line, i, j;
@@ -180,7 +172,7 @@ status_t time_translator(time_t unix_time, char *res, size_t size)
     if(res == NULL)
         return ERROR_NULL_POINTER;
 
-    const char *format = date_print_format;
+    const char *format = date_output_format;
     struct tm *tmp = gmtime(&unix_time);
 
     if (strftime(res, size, format, tmp) == 0) {
diff --git a/readlines.h b/readlines.h
@@ -1,19 +1,25 @@
-#ifndef READLINES
-#define READLINES
+#ifndef READLINES_H
+#define READLINES_H
 
 #include "main.h"
 #include "load_country_codes.h"
 
+#define COUNTRY_PROMPT "Pais"
+
+#define SIZE_OF_BUFF1    32
+#define SIZE_OF_BUFF2    32    
+
 #define INITIAL_SIZE 1000
 #define TIME_MAX_DIGITS 1000
 
+const char date_output_format[] = "%d %b %Y";
+
 typedef enum {
     PAIS,
     DATE,
     INFECTED
 } data_t;
 
-
 status_t readlines(char *src, char *dest);
 status_t fprintf_date(FILE *dest, size_t data);
 status_t fprintf_infected(FILE *dest, size_t data);