#define delims "\t"
char **parser(char *line)
{
int position = 0;
char **tokens = malloc(64* sizeof(char*));
char *token;
token = strtok(line, delims);
while (token != NULL) {
tokens[position] = token;
position++;
token = strtok(NULL, delims);
}
tokens[position] = NULL;
return tokens;
}
int main(){
char **args;
char *line="abc\tabc";
args=parser(line);
}
Когда я пытаюсь запустить этот код, я получаю сообщение об ошибке «Ошибка сегментации (ядро сброшено)». Я попробовал это на Linux с GCC. Проблема не в размере токенов.