У меня задание по классу «Операционные системы». С остальным кодом все в порядке, я компилирую его с помощью «gcc -o test test.c -Werror -Wall -pedantic -Wextra -Wfatal-errors», без ошибок или чего-то еще. Но когда я запускаю его, я получаю ошибку сегментации (дамп ядра). Я помещаю printf на разных этапах программы, чтобы увидеть, в какой момент я получаю сообщение об ошибке (вставлено !!, здесь возникает проблема). У меня нет вариантов по этому поводу. Любая помощь приветствуется!
Часть программы:
void inputToken(char *cmdInput)
{
int i;
int quit = 0;
char *token;
char *argList[] = {"\0", "\0", "\0", "\0", "\0", "\0", "\0"};
char *argv[] = {"&", "%"};
token = strtok(cmdInput, " ");
i = 0;
while(token != NULL && i<7)
{
argList[i] = token;
token = strtok(NULL, " ");
i++;
}
for(i=7; i>0; i++)
{
if(strcmp(argList[i], argv[0]) == 1) !!PROBLEM OCCURS HERE
{
<<SOME CODE>>
}
}
}
/*READING USER COMMAND*/
void usrInput()
{
int c;
int i=0;
char cmd[101];
while((c = getchar()) != EOF)
{
if(c == '\n')
break;
else if(i<100){
cmd[i]=c;
i++;
}
}
Заранее спасибо!