Допустим, у меня есть несколько строк в моем текстовом файле:
print 1
set_flag 1 2 1
find_path 7 8
print 5
Я хочу иметь возможность разделить эти значения и применить его к своим функциям:
void print(int id) {...}
void set_flag(int a, int b, int c) {...}
void find_path(int from, int to) {...}
Этогде я застрял прямо сейчас:
char str[256];
while(fgets(str, 256, filename) != NULL){
//if a line contains "set_flag" then call set_flag(int a, int b, int c)
if((strstr(str, "set_flag")) != NULL){
//retrieve the str and all individual int values
...
}
}
Я немного посмотрел в Интернете и нашел предложения, используя strcmp, strstr, strtol и fscanf.Хотя назначение рекомендует strtol преобразовать читаемые значения в текстовом файле в «правильные» типы данных.