Aracılığıyla paylaş


Öğretici: Visual Studio kullanarak C# kodunda hata ayıklamayı öğrenin

Bu makalede, adım adım izlenecek yolda Visual Studio hata ayıklayıcısının özellikleri tanıtılmaktadır. Hata ayıklayıcısı özelliklerinin daha üst düzey bir görünümünü istiyorsanız bkz. Hata ayıklayıcıya ilk bakış. Uygulamanızda hata ayıklama, genellikle uygulamanızı hata ayıklayıcı bağlı iken çalıştırdığınız anlamına gelir. Bu görevi yaptığınızda, hata ayıklayıcısı kodunuzun çalışırken ne yaptığını görmek için birçok yol sağlar. Kodunuzda adım adım ilerleyebilir ve değişkenlerde depolanan değerlere bakabilir, değerlerin ne zaman değiştiğini görmek için değişkenler üzerinde izlemeler ayarlayabilir, kodunuzun yürütme yolunu inceleyebilir, bir kod dalının çalışıp çalışmadığını görebilir vb. Bu alıştırma, ilk kez kod hatalarını ayıklamaya çalıştığınızsa, bu makaleye geçmeden önce Mutlak Yeni Başlayanlar İçin Hata Ayıklama’yı okumak isteyebilirsiniz.

Tanıtım uygulaması C# olsa da, özelliklerin çoğu C++, Visual Basic, F#, Python, JavaScript ve Visual Studio tarafından desteklenen diğer diller için geçerlidir (F# Düzenleme ve devam etme özelliğini desteklemez. F# ve JavaScript Otomatikler penceresini) desteklemez. Ekran görüntüleri C# dilindedir.

Bu öğreticide şunları yapacaksınız:

  • Hata ayıklayıcıyı başlatın ve kesme noktalarına ulaşın.
  • Kodda adım adım ilerlemenizi sağlayacak komutları hata ayıklayıcıda öğrenin
  • Veri ipuçlarında ve hata ayıklayıcı pencerelerinde değişkenleri inceleme
  • Çağrı yığınını inceleme

Önkoşullar

Visual Studio 2022 yüklü olmalı ve .NET masaüstü geliştirme iş yükü.

Visual Studio 2019 yüklü olmalı ve .NET Core platformlar arası geliştirme iş yükü bulunmalıdır.

Visual Studio'yu henüz yüklemediyseniz ücretsiz yüklemek için Visual Studio indirmeleri sayfasına gidin.

İş yükünü yüklemeniz gerekiyorsa ancak zaten Visual Studio yüklüyse, Visual Studio Yükleyicisi'ni açan Araçlar>Araçlar ve Özellikler Al...bölümüne gidin. Visual Studio Yükleyicisi başlatılır. .NET Core platformlar arası geliştirme iş yükünü seçin ve ardından Değiştir'etıklayın.

Zaten Visual Studio'nuz varsa fakat .NET masaüstü geliştirme iş yükü yüklü değilse, Visual Studio Yükleyicisi'ni açan Araçlar menüsünden>Araçlar ve Özellikler...seçeneğine gidin. Visual Studio Yükleyicisi'nde .NET masaüstü geliştirme iş yükünü seçin ve ardından Değiştir'iseçin.

Proje oluşturma

İlk olarak bir .NET Core konsol uygulaması projesi oluşturursunuz. Proje türü, herhangi bir şey eklemeden önce ihtiyacınız olan tüm şablon dosyalarıyla birlikte gelir!

  1. Visual Studio'yu açın. Başlangıç penceresi açık değilse Dosya >Başlangıç Penceresiseçin.

  2. Başlangıç penceresinde yeni proje oluştur seçin.

  1. Yeni proje oluştur penceresinde, arama kutusuna konsol girin. Ardından, Dil listesinden C# seçin ve ardından Platform listesinden windows seçin.

    Dil ve platform filtrelerini uyguladıktan sonra .NET Core için Konsol Uygulaması şablonunu seçin ve ardından sonraki seçin.

    konsol uygulaması için C# şablonunun ekran görüntüsü .

    Not

    Konsol Uygulaması şablonunu görmüyorsanız, Yeni Proje Oluştur penceresinden yükleyebilirsiniz. Aradığınızı bulamıyor musunuz? mesajında Daha fazla araç ve özellik yükle bağlantısını seçin. Ardından Visual Studio Yükleyicisi'nde .NET Core platformlar arası geliştirme iş yükünü seçin.

  2. Yeni projenizi yapılandırın penceresinde, GetStartedDebugging ifadesini, Proje adı kutusuna girin. Ardından İleriöğesini seçin.

  3. Önerilen hedef çerçeveyi (.NET 8.0 veya Uzun vadeli destek) seçin ve ardından oluştur'useçin.

  1. Yeni proje oluştur penceresinde, arama kutusuna konsol yazın. Ardından, Dil listesinden C# seçin ve ardından Platform listesinden windows seçin.

    Dil ve platform filtrelerini uyguladıktan sonra Konsol Uygulaması şablonunu seçin ve ardından İleriseçin.

    Visual Studio 2022'nin 'Yeni proje oluştur' penceresindeki 'Konsol Uygulaması' şablonunun ekran görüntüsü.

    Not/Açıklama

    Konsol Uygulaması şablonunu görmüyorsanız, Yeni proje oluştur penceresinden yükleyebilirsiniz. Aradığınızı bulamıyor musunuz? mesajında, Daha fazla araç ve özellik yükleyin bağlantısını seçin. Ardından Visual Studio Yükleyicisi'nde .NET masaüstü geliştirme iş yükünü seçin.

  2. Yeni projenizi yapılandırın penceresinde, Proje adı kutusuna GetStartedDebugging yazın. Ardından İleriöğesini seçin.

  3. Ek Bilgiler penceresinde, Framework açılır menüsünde .NET 8.0 seçili olduğundan emin olun ve ardından Oluşturseçeneğine tıklayın.

Visual Studio yeni projenizi açar.

Uygulamayı oluşturma

Program.csiçinde, varsayılan kodun tümünü aşağıdaki kodla değiştirin:

using System;

class ArrayExample
{
   static void Main()
   {
      char[] letters = { 'f', 'r', 'e', 'd', ' ', 's', 'm', 'i', 't', 'h'};
      string name = "";
      int[] a = new int[10];
      for (int i = 0; i < letters.Length; i++)
      {
         name += letters[i];
         a[i] = i + 1;
         SendMessage(name, a[i]);
      }
      Console.ReadKey();
   }

   static void SendMessage(string name, int msg)
   {
      Console.WriteLine("Hello, " + name + "! Count to " + msg);
   }
}

Hata ayıklayıcıyı başlatın!

  1. F5 (Hata Ayıklama > Hata Ayıklamayı Başlat) veya Hata Ayıklamayı Başlat düğmesine veya Hata Ayıklamayı Başlat düğmesinin görüntüsüne basın. Başlat'ı seçin.

    F5, uygulamayı uygulama işlemine eklenmiş hata ayıklayıcıyla başlatır, ancak şu anda kodu incelemek için özel bir şey yapmadık. Bu yüzden uygulama açılır ve bu konsol çıktısını görürsünüz.

    Hello, f! Count to 1
    Hello, fr! Count to 2
    Hello, fre! Count to 3
    Hello, fred! Count to 4
    Hello, fred ! Count to 5
    Hello, fred s! Count to 6
    Hello, fred sm! Count to 7
    Hello, fred smi! Count to 8
    Hello, fred smit! Count to 9
    Hello, fred smith! Count to 10
    

    Bu öğreticide, hata ayıklayıcısını kullanarak bu uygulamaya daha yakından bakacak ve hata ayıklayıcı özelliklerine göz atacaksınız.

  2. Kırmızı durdurma düğmesine (Shift + F5) basarak hata ayıklayıcıyı durdurun. Hata Ayıklamayı Durdur düğmesinin görüntüsü.

  3. Konsol penceresinde, konsol penceresini kapatmak için bir tuşa basın.

Çoğunlukla burada klavye kısayollarını kullanırız çünkü bu, hata ayıklayıcı komutlarını yürütmenin hızlı bir yoludur. Araç çubuğu veya menü komutları gibi eşdeğer komutlar da not edilir.

  1. Hata ayıklayıcıyı başlatmak için F5seçin veya Standart araç çubuğunda Hedef Hata Ayıkla düğmesini seçin ya da Hata Ayıklama araç çubuğunda Hata Ayıklamayı Başlat düğmesini seçin veya menü çubuğundan Hata Ayıklama>Başlat seçin.

    Visual Studio 2022'nin Standart araç çubuğundaki Hedefte Hata Ayıkla düğmesinin ekran görüntüsü.

    F5, uygulamayı uygulama işlemine eklenmiş hata ayıklayıcıyla başlatır. Kodu incelemek için özel bir işlem yapmadığımız için uygulama tamamlanmaya kadar çalışır ve konsol çıkışını görürsünüz.

    Hello, f! Count to 1
    Hello, fr! Count to 2
    Hello, fre! Count to 3
    Hello, fred! Count to 4
    Hello, fred ! Count to 5
    Hello, fred s! Count to 6
    Hello, fred sm! Count to 7
    Hello, fred smi! Count to 8
    Hello, fred smit! Count to 9
    Hello, fred smith! Count to 10
    
  2. Hata ayıklayıcıyı durdurmak için, Shift+F5 tuşlarına basın veya Hata Ayıklama araç çubuğunda hata ayıklamayı durdur düğmesini seçin veya menü çubuğundan Hata Ayıklama >Hata Ayıklamayı Durdurseçin.

    Visual Studio 2022'nin Hata Ayıklama araç çubuğunda hata ayıklamayı durdur düğmesinin ekran görüntüsü.

  3. Konsol penceresinde, konsol penceresini kapatmak için herhangi bir anahtarı seçin.

Kesme noktası ayarlama ve hata ayıklayıcıyı başlatma

  1. Main işlevinin for döngüsünde, aşağıdaki kod satırında sol kenar boşluğuna tıklayarak bir kesme noktası ayarlayın:

    name += letters[i];

    Kırmızı daire Kesme noktasının görüntüsü. kesme noktasını ayarladığınız yerde kesme noktasıgörüntülenir.

    Kesme noktaları, güvenilir hata ayıklamanın en temel ve temel özelliklerinden biridir. Kesme noktası, değişkenlerin değerlerine, bellek davranışına veya bir kod dalının çalıştırılıp çalıştırılmadığına bakabilmeniz için Visual Studio'nun çalışan kodunuzu nerede askıya alması gerektiğini gösterir.

  2. F5 veya Hata Ayıklamayı Başlat düğmesine basın. Hata Ayıklamayı Başlat düğmesinin ekran görüntüsü. Uygulama başlatılır ve hata ayıklayıcı kesme noktasını ayarladığınız kod satırında çalışır.

    Bir kesme noktası ayarla ve vur

    Sarı ok, hata ayıklayıcının duraklatıldığı deyimi temsil eder ve aynı noktada uygulama yürütmeyi de askıya alır (bu deyim henüz yürütülmedi).

    Uygulama henüz çalışmıyorsa F5 hata ayıklayıcıyı başlatır ve ilk kesme noktasında durur. Aksi takdirde, F5 uygulamayı sonraki kesme noktasına kadar çalıştırmaya devam eder.

    Kesme noktaları, kod satırını veya kodun ayrıntılı olarak incelemek istediğiniz bölümünü bildiğinizde yararlı bir özelliktir. Koşullu kesme noktaları gibi ayarlayabileceğiniz farklı kesme noktası türleri hakkında bilgi için bkz. Kesme noktalarını kullanma.

  1. Main işlevinin for döngüsünde, aşağıdaki kod satırında sol kenar boşluğuna tıklayarak bir kesme noktası ayarlayın:

    name += letters[i];

    Kesme noktasını ayarladığınız yerde kırmızı bir daire görüntülenir.

    Visual Studio 2022'de kesme noktasının ekran görüntüsü.

    Kesme noktaları, güvenilir hata ayıklamanın temel özelliklerinden biridir. Değişkenlerin değerlerine veya belleğin davranışına bakabilmek veya bir kod dalının çalıştırılıp çalıştırılmadığını bilmek için Visual Studio'nun çalışan kodunuzu duraklatmasını istediğiniz kesme noktaları ayarlayabilirsiniz.

  2. Hata ayıklamayı başlatmak için F5seçin veya Standart araç çubuğunda Hata Ayıklama Hedefi düğmesini seçin ya da Hata Ayıklama araç çubuğunda Hata Ayıklamayı Başlat düğmesini seçin veya menü çubuğundan Hata Ayıklama>Hata Ayıklamayı Başlat seçin. Uygulama başlatılır ve hata ayıklayıcı, kesme noktasını ayarladığınız kod satırına kadar çalışır.

    Visual Studio 2022'nin kod düzenleyicisinde kesme noktasını gösteren ve kesme noktasında kod yürütmenin duraklatıldığı ekran görüntüsü.

    Sarı ok, hata ayıklayıcının durduğu ifadeyi gösterir. Uygulama yürütme, henüz yürütülmemiş olan deyimle aynı noktada duraklatılır.

    Uygulama çalışmadığında F5, uygulamayı ilk kesme noktasına ulaşana kadar çalıştıran hata ayıklayıcıyı başlatır. Uygulama bir kesme noktasında duraklatılırsa, F5 uygulamayı sonraki kesme noktasına ulaşana kadar çalıştırmaya devam eder.

    Kesme noktaları, ayrıntılı olarak incelemek istediğiniz kod satırını veya bölümünü bildiğinizde yararlı bir özelliktir. Koşullu kesme noktaları gibi ayarlayabileceğiniz farklı kesme noktası türleri hakkında daha fazla bilgi için bkz. Kesme noktalarını kullanma.

Çoğunlukla burada klavye kısayollarını kullanırız çünkü uygulamanızı hata ayıklayıcıda yürütme konusunda hızlı bir yöntemdir (menü komutları gibi eşdeğer komutlar parantez içinde gösterilir).

  1. Kod yürütme name += letters[i] deyiminde duraklatıldığında, letters değişkeninin üzerine gelin ve varsayılan değeri olan, dizideki ilk öğenin değeri char[10]'yi görün.

    Değişkenleri incelemenize olanak sağlayan özellikler, hata ayıklayıcının en kullanışlı özelliklerinden biridir ve bunu yapmanın farklı yolları vardır. Genellikle bir sorunun hatalarını ayıklamaya çalıştığınızda, değişkenlerin belirli bir zamanda olmasını beklediğiniz değerleri depolayıp depolamadığını bulmaya çalışırsınız.

  2. değişkeninin içerdiği tüm öğeleri içeren özelliklerini görmek için letters değişkenini genişletin.

    Hata ayıklayıcının 'name+= letters[I]' ifadesinde duraklatıldığı anın ekran görüntüsü.

  3. Ardından, name değişkeninin üzerine fare ile gelin ve geçerli değeri olan boş bir dizeyi görürsünüz.

  4. SendMessage yöntem çağrısına ilerlemek için F10 (veya Hata Ayıklama > Adım Atlaseçeneğini seçin) iki kez basın ve ardından F10 bir kez daha basın.

    F10, uygulama kodunuzda işlevlere veya yöntemlere geçmeden hata ayıklayıcıyı sonraki deyime ilerler (kod yürütülmeye devam eder). SendMessage yöntem çağrısında F10 tuşuna basarak SendMessage için uygulama kodunu atladık (şu anda ilgilenmemiş olabiliriz).

  5. F10 (veya Hata Ayıklama>) tuşlarına birkaç kez basarak, for döngüsünü birkaç kez tekrarlayın, ardından kesme noktasında tekrar duraklayın ve her seferinde name değişkeninin üzerine gelerek değerini kontrol edin.

    Visual Studio Hata Ayıklayıcısı'nın, hata ayıklama sırasında F10 tuşuna basmanın ve döngüde adım adım ilerlemenin etkisini gösteren animasyonlu ekran görüntüsü.

    Değişkenin değeri, for döngüsünün her yinelemesiyle değişir ve fdeğerlerini gösterir, sonra fr, sonra frevb. Bu senaryoda hata ayıklayıcıyı döngüde daha hızlı ilerletmek için, F5 basabilirsiniz (veya bunun yerine hata ayıklama >Devam)seçebilirsiniz; bu da sizi sonraki deyim yerine kesme noktasına ilerler.

    Genellikle, hata ayıklarken değişkenlerdeki özellik değerlerini denetlemek, depolamalarını beklediğiniz değerleri depolayıp depolamadıklarını görmek için hızlı bir yol istersiniz ve veri ipuçları bunu yapmak için iyi bir yoldur.

  6. Kod yürütme, Main yöntemindeki for döngüsünde duraklatılmış olarak kalırken, SendMessage yöntem çağrısında duraklatana kadar F11 tuşuna basın (veya Hata Ayıkla > > Adım Atseçeneğini seçin).

    Şu kod satırında olmanız gerekir:

    SendMessage(name, a[i]);

  7. SendMessage yöntemine geçmek için F11 bir kez daha basın.

    Sarı işaretçi SendMessage yöntemine ilerler.

    SendMessage yöntemindeki yürütme işaretçisinin ekran görüntüsü.

    F11, İçeri Gir komutudur ve uygulama yürütme işlemini bir kerede bir deyimle ilerletir. F11, yürütme akışını en ayrıntılı şekilde incelemenin iyi bir yoludur. Varsayılan olarak, hata ayıklayıcısı kullanıcı olmayan kodu atlar (daha fazla ayrıntı istiyorsanız bkz. Yalnızca Kodum).

    SendMessage yöntemini incelemeyi tamamladığınızı ve yöntemden çıkmak ancak hata ayıklayıcıda kalmak istediğinizi varsayalım. Bunu Dışarı Çık komutunu kullanarak yapabilirsiniz.

  8. Shift + F11 (veya Debug > Step Out) basın.

    Bu komut, geçerli yöntem veya işlev dönene kadar uygulama yürütmeyi sürdürür (ve hata ayıklayıcıyı ilerletir).

    Main yöntemindeki for döngüsüne geri dönmeniz ve SendMessage yöntem çağrısında duraklatılmış olmanız gerekiyor. Kodunuz arasında gezinmenin farklı yolları hakkında daha fazla bilgi için bkz. hata ayıklayıcıda kodda gezinme.

  1. kod yürütme name += letters[i] deyiminde duraklatılırken, dizi boyutunu ve öğe türünü gösteren bir veri ipucunu görmek için fareyle letters değişkeninin üzerine gelin char[10].

    Not

    Hata ayıklayıcının en kullanışlı özelliklerinden biri, bir değişkeni inceleyebilmesidir. Genellikle bir sorunun hatalarını ayıklamaya çalışırken değişkenlerin belirli bir zamanda beklediğiniz değerlere sahip olup olmadığını bulmaya çalışırsınız. Veri ipuçlarını görüntülemek, bunu denetlemenin iyi bir yoludur.

  2. Tüm dizi öğelerini ve değerlerini görüntülemek için letters değişkenini genişletin.

    Visual Studio 2022'de 'letters' dizi değişkeni için öğe değerlerini gösteren hata ayıklayıcısı veri ipucunun ekran görüntüsü.

  3. Boş bir dize olan geçerli değerini görmek için name değişkeninin üzerine gelin.

  4. Hata ayıklayıcıyı sonraki deyime ilerletmek için F10'u seçin veya Hata Ayıklama araç çubuğunda Adımla düğmesini seçin veya menü çubuğundan Hata Ayıkla> Üzerine Adımla'yı seçin. SendMessage yöntem çağrısından geçmek için F10 iki kez daha seçin.

    F10, kodun çalışmasına rağmen işlev veya yöntemlere adım atmadan hata ayıklama işlemini ilerletir. Bu şekilde, şu anda ilgilenmediğimiz SendMessage yöntemindeki kodda hata ayıklamayı atladık.

  5. for döngüsünü birkaç kez yinelemek için F10 tekrar tekrar seçin. Her döngü yinelemesi sırasında kesme noktasında duraklatın ve ardından veri ipucundaki değerini denetlemek için name değişkeninin üzerine gelin.

    Visual Studio 2022'de 'name' değişkeninin dize değerini gösteren hata ayıklayıcısı veri ipucunun ekran görüntüsü.

    Değişkenin değeri, for döngüsünün her yinelemesiyle değişir ve fdeğerlerini gösterir, sonra fr, sonra frevb. Hata ayıklayıcıyı döngüde daha hızlı ilerletmek için bunun yerine F5 seçin; bu, sonraki deyim yerine kesme noktanıza ilerler.

  6. Kod yürütme, Main yönteminin for döngüsünde duraklatılırken, F11'i seçin veya Hata Ayıklama araç çubuğundan Adımla düğmesini seçin veya SendMessage yöntem çağrısına ulaşana kadar menü çubuğundan Hata Ayıklama> Adımla'yı seçin.

    Hata ayıklayıcısı şu kod satırında duraklatılmalıdır:

    SendMessage(name, a[i]);

  7. SendMessage yöntemine geçmek için F11 yeniden seçin.

    Sarı işaretçi SendMessage yöntemine ilerler.

    'SendMessage' yöntemindeki hata ayıklayıcının yürütme işaretçisini gösteren ekran görüntüsü.

    F11 kodunuzun yürütme akışını daha ayrıntılı incelemenize yardımcı olur. Yöntem çağrısından bir yönteme geçmek için F11öğesini seçin. Varsayılan olarak, hata ayıklayıcısı kullanıcı olmayan yöntemlere adımlamayı atlar. Kullanıcı olmayan kodda hata ayıklama hakkında bilgi edinmek için bkz. Just My Code .

    SendMessage yönteminde hata ayıklamayı tamamladıktan sonra, main yönteminin for döngüsüne geri dönmeye hazırsınız demektir.

  8. SendMessage yönteminden çıkmak için, Shift+F11'i seçin veya Hata Ayıklama araç çubuğundaki Dışarı Adımla düğmesini seçin veya menü çubuğundan Hata Ayıklama >Ayıkla'yı seçin.

    Step Out, uygulamanın yürütülmesini sürdürür ve geçerli yöntem veya işlev dönene kadar hata ayıklayıcının ilerlemesini sağlar.

    sarı işaretçiyi Main yönteminin for döngüsünde SendMessage yöntem çağrısında duraklatılmış olarak görürsünüz. Kodunuz arasında gezinmenin farklı yolları hakkında daha fazla bilgi için bkz. hata ayıklayıcıda kodda gezinme.

  1. Kesme noktasına yeniden ilerlemek için F5 seçin.

  2. Kod düzenleyicisinde aşağı kaydırın ve SendMessage yöntemindeki Console.WriteLine yönteminin üzerine gelerek yeşil Tıkla ve Çalıştır düğmesi belirdiğinde bekleyin. görünecektir. Düğmenin araç ipucunda "Yürütmeyi buraya kadar çalıştır" ifadesi gösterilir.

    Tıklamayla Çalıştır düğmesinin ekran görüntüsü.

    Not

    Tıklamak için Çalıştır düğmesi Visual Studio 2017'de yenidir. (Yeşil ok düğmesini görmüyorsanız, hata ayıklayıcısını doğru yere ilerletmek için bu örnekte F11 kullanın.)

  3. Çalıştır'ı seçerek düğmesine tıklayın. Tıkla ve Çalıştır düğmesinin görüntüsü.

    Hata ayıklayıcı adım adım Console.WriteLine yöntemine ilerler.

    Bu düğmeyi kullanmak, geçici kesme noktası ayarlamaya benzer. Tıklayarak Çalıştır, uygulama kodunun görünür bir bölgesinde hızla gezinmek için kullanışlıdır (herhangi bir açık dosyada seçebilirsiniz).

  1. Kesme noktasına yeniden ilerlemek için F5 seçin.

  2. Kod düzenleyicisinde, SendMessage yöntemindeki Console.WriteLine yöntem çağrısının üzerine gelin ve Tıklayacak Şekilde Çalıştır düğmesi. Düğmenin araç ipucunda "Çalıştırmayı buraya kadar yürüt" ifadesi gösterilir.

    Visual Studio 2022'de Tıkla çalıştır düğmesini gösteren ekran görüntüsü.

  3. Tıklamak için Çalıştır düğmesini seçin. Alternatif olarak, imleciniz Console.WriteLine deyimindeyken Ctrl+F10öğesini seçin. Alternatif olarak, Console.WriteLine yöntem çağrısına sağ tıklayın ve bağlam menüsünden İmleçte Çalıştır seçin.

    Hata ayıklayıcı Console.WriteLine yöntem çağrısına ilerler.

    Tıklamak için Çalıştır düğmesini kullanmak, geçici bir kesme noktası ayarlamaya benzer ve uygulama kodunuzun görünür bir bölgesinde açık bir dosyada hızla gezinmek için kullanışlıdır.

Uygulamanızı hızlı bir şekilde yeniden başlatın

Yeniden Başlat düğmesini seçin. Uygulamayı Yeniden Başlat düğmesinin görüntüsü Hata Ayıklama Araç Çubuğu'nda (Ctrl + Shift + F5).

Restarttuşuna bastığınızda, uygulama durdurulup hata ayıklayıcıyı yeniden başlatmaya kıyasla zamandan tasarruf sağlar. Hata ayıklayıcı, kod yürütülürken karşılaşılan ilk kesme noktasında durur.

Hata ayıklayıcı, daha önce for döngüsünün içinde ayarladığınız kesme noktasında yeniden durur.

Uygulamanızı hata ayıklayıcıda baştan yeniden çalıştırmak için, Ctrl+Shift+F5öğesini seçin veya Hata Ayıklama araç çubuğunda yeniden başlat düğmesini seçin veya menü çubuğundan Hata Ayıkla >Yeniden Başlatseçin.

Visual Studio 2022'nin Hata Ayıklama araç çubuğundaki Yeniden Başlat düğmesinin ekran görüntüsü.

Yeniden Başlat hata ayıklayıcıyı durdurur ve bir adımda yeniden başlatır. Hata ayıklayıcı yeniden başlatıldığında, daha önce for döngüsü içinde ayarladığınız kesme noktasına kadar çalışır ve ardından duraklar.

Otomatik Ve Yerel Ayarlar pencereleriyle değişkenleri inceleme

  1. Kod düzenleyicisinin altındaki Otomobiller penceresine bakın.

    Kapalıysa, hata ayıklayıcı duraklatılmış durumdayken Hata Ayıkla>Windows>Otomatiklerseçerek açın.

    Autos penceresinde değişkenleri ve geçerli değerlerini görürsünüz. Otomatik penceresi, geçerli satırda veya önceki satırda kullanılan tüm değişkenleri gösterir (Dile özgü davranış için belgeleri kontrol edin).

  2. Ardından, Otomatikler penceresinin yanındaki bir sekmede Yerel Ayarlar penceresine bakın.

  3. letters değişkenini genişleterek içerdiği öğeleri gösterin.

    Visual Studio'da YerelLer Penceresinin ekran görüntüsü.

    Locals penceresi, geçerli kapsamındaki değişkenleriyani geçerli yürütme bağlamını gösterir.

Otomatik ve Yerel Değişkenler pencereleri, hata ayıklarken değişken değerleri gösterir. Pencereler yalnızca hata ayıklama oturumu sırasında kullanılabilir. Autos penceresi, hata ayıklayıcının bulunduğu geçerli satırda ve önceki satırda kullanılan değişkenleri gösterir. Locals penceresi, genellikle geçerli işlev veya yöntem olan yerel kapsamda tanımlanan değişkenleri gösterir.

  1. Hata ayıklayıcı duraklatıldığında, kod düzenleyicisinin alt kısmındaki Otomatikler penceresini görüntüleyin.

    Otomatik penceresi kapalıysa, Ctrl+D, Aveya menü çubuğundan Hata Ayıkla>Windows>Otomatik'i seçin.

  2. Hata ayıklayıcı hala duraklatılmış durumdayken, Otomatik penceresinin yanındaki bir sekmede Locals penceresini görüntüleyin.

    Locals penceresi kapalıysa, Ctrl+D, Ltuşlarına basın veya Hata Ayıkla>Windows>Yerellerseçeneğini seçin.

  3. Locals penceresinde, dizi öğelerini ve değerlerini görmek için letters değişkenini genişletin.

    Visual Studio 2022'de 'letters' dizi değişkeni genişletilmiş Yerel pencerenin ekran görüntüsü.

Otomatikler ve Yereller pencereleri hakkında daha fazla bilgi edinebilirsiniz, Otomatikler ve Yereller pencerelerinde değişkenleri inceleyin.

Saat ayarlama

Ana kod düzenleyicisi penceresinde name değişkenine sağ tıklayın ve İzleme Ekleseçin.

Watch penceresi, kod düzenleyicisinin alt kısmında açılır. İzlemek istediğiniz bir değişken (veya ifadeyi) belirtmek için izleme penceresini kullanabilirsiniz.

Artık name değişkeninde ayarlanmış bir izlemeniz var ve hata ayıklayıcıda ilerledikçe değer değişikliğini görebilirsiniz. Diğer değişken pencerelerinden farklı olarak, İzle penceresi her zaman izlediğiniz değişkenleri gösterir (kapsam dışındayken gri görünür).

Kod adım adım ilerlerken gözlemlemek istediğiniz bir değişkeni veya ifadeyi Watch penceresine ekleyerek belirtebilirsiniz.

  1. Hata ayıklayıcı duraklatılırken, name değişkenine sağ tıklayın ve İzleme Ekleseçin.

    watch penceresi varsayılan olarak kod düzenleyicisinin alt kısmında açılır.

  2. artık name değişkeninde bir izleme ayarladığınıza göre, her for döngü turu ile name değişkeninin değerinin değiştiğini görmek için kodunuzda ilerleyin.

    Diğer değişken pencerelerinden farklı olarak, İzle penceresi her zaman izlediğiniz değişkenleri gösterir. Kapsam dışında olan değişkenler kullanılamaz olarak görüntülenir.

İzle penceresi hakkında daha fazla bilgi için İzleme pencereleriyledeğişkenleri izlemeye bakın.

Çağrı yığınını inceleme

  1. Kod yürütme for döngüsünde duraklatılırken, sağ alt bölmede varsayılan olarak açık olan Çağrı Yığını penceresini seçin.

    Hata ayıklayıcıda duraklatılmış durumdayken, kapalıysa Hata Ayıkla>Windows>Çağrı Yığını'i seçerek açın.

  2. SendMessage yönteminde hata ayıklayıcının duraklatılmış olduğunu görene kadar birkaç kez F11 seçin. Çağrı Yığını penceresine göz atın.

    Visual Studio'daki Çağrı Yığını penceresinin ekran görüntüsü.

    Çağrı Yığını penceresi, yöntemlerin ve işlevlerin çağrılma sırasını gösterir. Üst satırda geçerli işlev (bu uygulamadaki SendMessage yöntemi) gösterilir. İkinci satırda, SendMessageMain yönteminden çağrıldığı vb. gösterilir.

    Not

    Çağrı Yığını penceresi, Eclipse gibi bazı IDE'lerde Debug görünümüne benzer.

    Çağrı yığını, bir uygulamanın yürütme akışını incelemek ve anlamak için iyi bir yoldur.

    Bir kod satırına çift tıklayarak o kaynak koda bakabilir ve ayrıca hata ayıklayıcı tarafından incelenen geçerli kapsamı da değiştirebilirsiniz. Bu eylem hata ayıklayıcıyı ilerletmez.

    Diğer işlemleri yapmak için Çağrı Yığını penceresinden sağ tıklama menülerini de kullanabilirsiniz. Örneğin, belirtilen işlevlere kesme noktaları ekleyebilir, İmleçÇalıştır'ı kullanarak hata ayıklayıcıyı ilerletebilir ve kaynak kodu inceleyebilirsiniz. Daha fazla bilgi için bkz. Nasıl Yapılır: Çağrı Yığınını İnceleme.

Çağrı Yığını, yöntemlerin ve işlevlerin çağrılma sırasını göstererek uygulamanızın yürütme akışını anlamanıza yardımcı olabilir.

  1. Hata ayıklayıcı for döngüsünde duraklatılmış durumdayken, kod düzenleyicisinin sağ alt bölmesinde varsayılan olarak açılan Çağrı Yığını penceresini görüntüleyin.

    Çağrı Yığını penceresi kapalıysa, Ctrl+D, Cöğesini seçin veya menü çubuğundan Hata Ayıklama>Windows>Çağrı Yığını seçeneğini seçin.

    Çağrı Yığını penceresinde geçerli Main yönteminde sarı işaretçiyi görürsünüz.

  2. SendMessage yönteminde hata ayıklayıcının duraklatılmış olduğunu görene kadar birkaç kez F11 seçin.

    Çağrı Yığını penceresinin üst satırı, geçerli işlev olan SendMessage yöntemini gösterir. İkinci satır, SendMessage yönteminin Main yönteminden çağrıldığını gösterir.

    Visual Studio 2022'de Çağrı Yığını penceresinin ekran görüntüsü.

    Not

    Çağrı Yığını penceresi, Eclipse gibi bazı IDE'lerdeki Hata Ayıklama perspektifine benzer.

    Çağrı Yığını penceresinde, kaynak koda gitmek için bir kod satırına çift tıklayarak hata ayıklayıcı tarafından incelenen mevcut kapsamı değiştirebilirsiniz. Bu eylem hata ayıklayıcıyı ilerletmez.

    Diğer işlemleri yapmak için Çağrı Yığını penceresinden sağ tıklama menülerini de kullanabilirsiniz. Örneğin, belirtilen işlevlere kesme noktaları ekleyebilir, İmleçÇalıştır'ı kullanarak hata ayıklayıcıyı ilerletebilir veya kaynak koduna gidebilirsiniz.

Çağrı Yığınıhakkında daha fazla bilgi için bkz. Çağrı Yığını Nasıl İncelenir.

Sonraki adımlar

Bu öğreticide hata ayıklayıcıyı başlatmayı, kodda adım adım ilerleyip değişkenleri incelemeyi öğrendiniz. Daha fazla bilgi için bağlantılarla birlikte hata ayıklayıcısı özelliklerine üst düzey bir bakış elde etmek isteyebilirsiniz.