Erwerb funktionaler, räumlicher und kausaler Beziehungen von ...

ai.cs.uni.dortmund.de

Erwerb funktionaler, räumlicher und kausaler Beziehungen von ...

Anhang 96

(strcmp(p->var_type,"STRING") != 0))

exit_on_error("Incorrect arguments");

return;

}

exit_on_error(strcat("Unknown Syntax : ",type_of_line));

}

/* Liest die Zeilen der Konfigurationsdatei, ruft für jede nichtleere Zeile

make_def auf, um einen neuen Eintrag in die Konfigurationsdatei zu erzeugen */

void read_config_file(char *filename, def_list *definition)

{

FILE* configfile;

char* buffer;

configfile = open_text_read (filename,1);

buffer = (char *) new_mem(1000,1);

while(!(feof(configfile)))

{

read_line(configfile,buffer,1000);

if (buffer != NULL)

{

trim(buffer,buffer,' ');

if (strcmp(buffer,"") != 0)

make_def(buffer,definition);

}

}

if (strlen(definition->input) == 0)

exit_on_error("No inputfile");

if (strlen(definition->output) == 0)

exit_on_error("No outputfile");

if (definition->first == NULL)

exit_on_error("Empty outputfile declared");

fclose(configfile);

free(buffer);

}

void format_pred_list(char * pred_list)

{

unsigned int i = 0;

int k = 0;

int level = 0;

while (i < strlen(pred_list))

{

if(pred_list[i] == '(')

level++;

if(pred_list[i] == ')')

level--;

if (((level == 1) && (pred_list[i] != '(') && (pred_list[i] != ')')) || \

pred_list[i] == ',')

{

pred_list[k] = pred_list[i];

k++;

}

i++;

}

pred_list[k] ='\0';

}

Weitere Magazine dieses Users
Ähnliche Magazine