Используйте mdbg для отладки простого кода на C с помощью Windows SDK 7.1

Это звучит очень просто, но я просто не могу заставить его работать. Я установил Windows SDK 7.1 и открыл командную строку Windows SDK 7.1.

У меня есть код, test.c, следующим образом:

#include <stdio.h>
#include <math.h>

void main()
{
    int i;
    for(i=1; i<10; i++)
        printf("Hello world! This is line %d \n", i);
}

И теперь я хочу отладить это. Я сначала скомпилировал его, используя:

cl test.c /Z7

А потом открыл:

mdbg test.exe

Что случилось потом:

MDbg (Managed debugger) v4.0.30319.1 (RTMRel.030319-0100) started.
Copyright (C) Microsoft Corporation. All rights reserved.

For information about commands type "help";
to exit program type "quit".
run test.exe
Hello world! This is line 1
Hello world! This is line 2
Hello world! This is line 3
Hello world! This is line 4
Hello world! This is line 5
Hello world! This is line 6
Hello world! This is line 7
Hello world! This is line 8
Hello world! This is line 9
STOP: Process Exited

Просто до самого конца побежал, совсем не останавливаясь. У меня даже нет возможности установить точки останова...

Что я должен делать?

Большое спасибо всем вам.

1 ответ

Решение

Вы используете неправильный инструмент для этой цели. Mdbg (как следует из его названия) является управляемым отладчиком, поэтому он работает со сборками.NET, и вы пытаетесь отлаживать нативное приложение. Я бы порекомендовал использовать windbg или cdb (если вы предпочитаете отладчики командной строки). Оба пакета доступны бесплатно в Windows SDK - просто установите средства отладки для Windows. У них также есть хорошая документация.

Другие вопросы по тегам