Всякий раз, когда я устанавливаю точку останова в моей программе на c в gdb, она устанавливает точку останова на одну строку после строки, которую я указываю в команде "break".
Так что я хочу изучить некоторый простой код на c простоПриступая к отладке в c, я установил точку останова в строке 6 в коде, но вместо этого она устанавливает точку останова в строке 7.
#include <stdio.h>
#include <string.h>
int main() {
char str_a[20];
strcpy(str_a, "Hello, world!\n");
printf(str_a);
}
Сначала я перечисляю строки кода, используя «list»затем я использую команду «break 6», чтобы добавить точку останова в строке 6, я ожидаю, что результат будет примерно таким: «точка останова 1 в 0x000d: файл char_array.c, строка 6».но на самом деле для этой команды выводится «Точка останова 1 в 0x113d: файл char_array.c, строка 7».Эта строка показывается всякий раз, когда я пытаюсь добавить точки останова на всех строках выше строки 7.Может ли это быть ошибкой?