[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]

Программирование: Разработка и отладка программ


Пример программы adb: adbsamp3

В приведенный ниже пример программы adbsamp3.c включен бесконечный рекурсивный вызов функций. При попытке выполнить эту программу до конца возникнет страничная ошибка, которая приведет к аварийному завершению программы.

int     fcnt,gcnt,hcnt;
h(x,y)
int x,y;
{
        int hi;
        register int hr;
        hi = x+1;
        hr = x-y+1;
        hcnt++;
        hj:
        f(hr,hi);
}
g(p,q)
int p,q;
{
        int gi;
        register int gr;
        gi = q-p;
        gr = q-p+1;
        gcnt++;
        gj:
        h(gr,gi);
}
f(a,b)
int a,b;
{
        int fi;
        register int fr;
        fi = a+2*b;
        fr = a+b;
        fcnt++;
        fj:
        g(fr,fi);
}
main()
{
        f(1,1);
}

Откомпилируйте программу с помощью cc и запишите ее в файл adbsamp3:

cc -g adbsamp3.c -o adbsamp3

Для запуска сеанса отладки введите следующую команду:

adb adbsamp3

Связанная информация

Обзор программы отладки adb

Применение выражений в программе adb

Пример программы adb: adbsamp

Пример программы adb: adbsamp2


[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]