在本文中,您將學習非常適合初學者的基本知識。 GDB 調試器 命令。プログラムをコンパイルして、デバッグのためにGDBに渡すことができるようにする方法を学習します。

使用終端構建和運行 C/C++ 程序

快速總結

了解如何在調試模式下啟動 C/C++ 程序。描述了一些最常用的 GDB 命令,例如: 假期, , 下一個, ,等瑣碎命令,Debugger,Debugger,Debugger,Debugger,瑞士軍刀。因此,讓我們深入了解 GDB 調試的基礎知識,無需進一步解釋。

使用 GDB 進行調試

調試是一項必不可少的編程技能。すべてのプログラマーは、組織的な目的であろうと個人的な目的であろうと、アプリケーションをデバッグする必要があります。ご存知のとおり、プログラマーはほとんどの時間を以前に作成されたコードのデバッグに費やしています。因此,一个人应该经常学习一些调试,以便他/她可以轻松地将自己从一些错误的麻烦中解脱出来,而不会浪费任何时间。

為什麼選擇 GDB?

大多數大型科技公司都被指示使用它。此外,對於 GDB,一個非常概念化的概念遍布用戶。 GDB命令行工具,其他讓軬䮩䮩們介紹時間可觀察的內部內容。學習一些非常基本和最重要的概念,例如內存分配,指針,內存地址操縱,最重要的是,想像您正在運行的程序中正在發生的事情。

一些基本的 GDB 命令

  1. 假期:
  2. 下一個: 該命令移至程序的下一行。假設第7行設置斷點,則用“next”或“n”一般悅到達第8行。
  3. 步: 此命令將您帶到當前正在運行的函數或代碼塊
  4. 印刷: 用於顯示各種變量或函數調用的值。 只需輸入“p”
  5. 跑:
  6. 繼續: 此命令移動到下一個斷點。

使用 GDB 調試 C++ 程序

讓我們看看這裡發生了什麼。 “二進制搜索“C++程序。

一個簡單的二分搜索程序的代碼

#include <iostream>

#include <vector>

using namespace std;

int iterations_counter = 0;

int binary_search(vector < int > arr, int s, int e, int key) {
  //base case

  iterations_counter++;

  if (s > e)
    return -1;

  int mid = (s + e) / 2;

  int index = -1;

  if (arr[mid] == key)
    index = mid;
  else if (arr[mid] > key)

    index = binary_search(arr, s, mid - 1, key);
  else
    index = binary_search(arr, mid + 1, e, key);

  return index;
}

int main() {
  cout << "Enter the elements of the vector(Press -1 to stop)" << endl;
  vector < int > arr;

  while (true) {
    int n;
    cin >> n;

    if (n == -1)
      break;
    arr.push_back(n);
  }

  cout << "Enter the key" << endl;
  int key;
  cin >> key;

  cout << "Index at which the key is found(0 based indexing, -1 indicates that the key is not present in the vector): " << binary_search(arr, 0, arr.size() - 1, key) << endl;
  cout << "Total Number of iterations required: " << iterations_counter << endl;
}

如何編譯用於 GDB 的程序

“可以啟用-g編譯時標記如下命令所示

g++ "your_file_name" -o "your_output_file_name" -g
如何編譯以與 GDB 一起使用

發出以下命令開始調試

gdb "your_output_file_name"
進入調試模式

讓我們把它放進去 斷點 主要是binary_search函數 程序

將再次使用 什麼時候 下一個 (n)

在標記的斷點後運行在標記的斷點後運行

利用 繼續 命令

繼續命令繼續命令

利用 印刷 (p)

使用打印命令使用打印命令

停止調試會話 1停止調試會話

結論是

在本文中,您學習瞭如何使用 GDB Debugger 編譯程序進行調試以及一些最基本的調試命令和方法。使用 run、break、step、next、continue 和打印命令。