Я работаю на языке C, и мне нужно отладить свой код, так как я хочу увидеть поведение моей программы.
Я попробовал эти команды в моем терминале Linux:
gcc readFile.c
gdb a.out
b main
run
next
ниже приведен мой кодовый файл
void main()
{
struct voter v[10];
FILE* fin;
fin=fopen("voters.txt","r");
if(fin == NULL) {
perror("Error opening file");
return(-1);
}
char buffer[2000];
char arr[10][100];
int i=0;
while(fgets(buffer,2000,fin)!=NULL)
strcpy(arr[i++],buffer);
fclose(fin);
char del[2]="/";
char * token;
token=strtok(arr[0],del);
i=0;
while(1)
{
strcpy(v[i].name,token);
token = strtok(NULL, del);
strcpy(v[i].id,token);
printf("%s\t%s\n",v[i].name,v[i].id);
token=strtok(arr[i+1],del);
if(token==NULL)
break;
}
}
после попытки выполнения вышеуказанных команд программы полностью завершаются до конца файла. что я ожидал, что он должен запустить следующую строку сразу после main (). Я понятия не имею, что делать для отладки моей программы. Также это не какая-либо точка останова на любой линии, подобной этой
break 22
, но безрезультатно. так что я поражен, что как отладить мой код