在 Visual c + + 調試器監看視窗中展開陣列指標

本文說明如何展開陣列指標,以在 Visual c + + 調試器 監視 視窗中查看所有陣列元素。

原始產品版本:   Visual c + +
原始 KB 編號:   198953

摘要

從 Visual c + + 版本6.0 開始,現在可以展開陣列指標,以在 Visual c + + 調試器 監視 視窗中查看所有陣列元素。 這項功能沒有記錄。

在 [ 監視 ] 視窗中,輸入運算式,以評估為指標後接逗號及陣列中的元素數目。

其他相關資訊

  1. 以主控台應用程式的形式建立下列程式碼的調試版本。

    // Filename main.cpp
    // No compile option needed
    #include <iostream.h>
    void main(void)
    {
        int * p;
        char* ptr = "Hello World";
        p = new int [10];
    
        for(int i=0; i<=9; i++){*(p+i) = i+1;}
        cout << i <<endl;
    }
    
  2. 使用偵錯工具執行程式碼,並在程式碼的最後一行停止。

  3. 在 [ 監視 ] 或 [ 快速監視 ] 視窗中,新增變數 pptr 。 您會在變數旁看到加號 (+) 符號。

  4. 按一下加號 (+) 符號,展開變數。 您只會看到它所指向之陣列的第一個元素。

  5. 現在,在 [ Watch ] 視窗中輸入 p,10ptr,11

  6. 按一下加號 (+) 符號,展開變數。 現在,您會看到它所指向之陣列的所有元素。

如果您想要查看特定範圍的元素,請輸入第一個元素的位址來指定起始索引,接著是前述步驟中所述的格式說明符。 例如, (p + 3) 、8 會顯示元素 p[3..10] ,以及 (ptr + 3) ,10 會顯示元素 ptr[3..12] 。 不幸的是,[ 監視 視窗] 中的起始索引是 [0],實際上此範例會對應至索引3。 請記住,必須將位移3新增到每個顯示的索引,以取得陣列元素的實際索引。