Пример #1
0
// Cabecera: Conf* obtenerConfiguraciones()
// Precondicion:
// Poscondicion: devuelve un vector de conf con los datos de configuracion.txt
Conf* obtenerConfiguraciones() {
    FILE *FICHERO_CONF = fopen("configuracion.txt", "r");
    if (FICHERO_CONF == NULL) {
        printf("Error al abrir fichero configuracion.txt");
        exit(1);
    } else {
        char c;
        int n = 0;
        char *cadena = (char*) malloc(sizeof (char));
        int contadorChar = 0;
        Conf *p = (Conf*) malloc(sizeof (Conf));
        while ((c = fgetc(FICHERO_CONF)) != EOF) {
            if (c == '\n') {
                n++;
                p = (Conf*) realloc(p, n * sizeof (Conf));
                cadena = (char*) realloc(cadena, (contadorChar + 1) * sizeof (char));
                cadena[contadorChar] = '\0';
                p[n - 1] = obtenerConfiguracion(cadena);
                contadorChar = 0;
                cadena = (char*) calloc(1, sizeof (char));
            } else {
                contadorChar++;
                cadena = (char*) realloc(cadena, (contadorChar) * sizeof (char));
                cadena[contadorChar - 1] = c;
            }
        }
        n++;
        p = (Conf*) realloc(p, n * sizeof (Conf));
        cadena = (char*) realloc(cadena, (contadorChar + 1) * sizeof (char));
        cadena[contadorChar] = '\0';
        p[n - 1] = obtenerConfiguracion(cadena);
        contadorChar = 0;
        cadena = (char*) calloc(1, sizeof (char));
        fclose(FICHERO_CONF);
        return p;
    }
}
Пример #2
0
int main(int argc, char* argv[]) {

	lista_tareas = list_create();

	log_crear("DEBUG", LOG_FILE, PROCESO);

	obtenerConfiguracion(argv[1]);
	//sem_init(&sem_sin_hilos, 0, 1);
	conectarseAMarta();

	esperarTareas();

	return 0;

}