#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N_LINES 256
#define LINE_MAX_CH 128
#define N_VAR_ABC 26
#define N_VAR_X 1024
#define N_ATOM 20
#define ATOM_MAX_CH 16
char code[N_LINES][LINE_MAX_CH];
int var_abc[N_VAR_ABC];
int var_x[N_VAR_X];
char atom[N_ATOM][ATOM_MAX_CH];
int get_atom_token(char *d, char *s) {
char *p;
p = s;
while ((*s != ' ' ) && (*s != 0) && (*s != ',') && (*s != '\n')) {
*d = *s;
s++;
d++;
}
*d = 0;
while ((*s == ',') || (*s == ' ') || (*s == '\n')) s++;
return (s-p);
}
int get_atoms(int line) {
int i;
int length;
int length2;
length = 0;
for (i = 0; ; i++) {
if((length2 = get_atom_token(atom[i], code[line] + length)) == 0)
break;
length += length2;
printf("%s\n", atom[i]);
}
printf("\n");
return 9;
}
int main(int argc, char *argv[]) {
FILE *fp;
int line_counter;
int i;
if((fp = fopen(argv[1], "r")) == NULL) {
perror("Can't open file");
exit(1);
}
line_counter = 0;
while(!feof(fp)) {
fgets(code[line_counter], LINE_MAX_CH, fp);
line_counter++;
}
for (i = 0; i < N_VAR_ABC; i++)
var_abc[i] = 0;
for (i = 0; i < N_VAR_X; i++)
var_x[i] = 0;
for (i = 0; i < line_counter; i++) {
get_atoms(i);
if(strcmp(atom[0], "add") == 0) {
}
}
fclose(fp);
return 0;
}