所以,我有一個變量buffPtr:TPointer 它有一個大小爲16,幷包含一系列的數字,主要是從0開始,說像013854351387365.我確定它包含值,因爲應用程序做它沒事。如何在Delphi中調試時顯示指針的值?
我想在調試時看到這個值。
如果我在表中添加「PAnsiChar(buffPtr)^」,我只能看到第一個字節。
所以,我有一個變量buffPtr:TPointer 它有一個大小爲16,幷包含一系列的數字,主要是從0開始,說像013854351387365.我確定它包含值,因爲應用程序做它沒事。如何在Delphi中調試時顯示指針的值?
我想在調試時看到這個值。
如果我在表中添加「PAnsiChar(buffPtr)^」,我只能看到第一個字節。
我添加了一個手錶 PAnsiChar(buffPtr)^
與觀看屬性爲
重複計數爲16 小數
我不明白這個問題或答案。你能詳細說明一下嗎? –
如果您還包含來自此配置的* output *的圖片,而不僅僅是對話框的輸入,那將會很好。 –
你設置的手錶做轉儲記憶區域?對於一些有幫助的結構。
如果可以重新編譯應用程序,然後定義如下:
type
T16Values = array[0..15] of Byte;
P16Values = ^T16Values;
然後投你的指針變成P16Values
,並查看。
如果它是另一種數據類型比Byte
,請相應地更改上面的代碼。
恕我直言,你不需要,因爲調試器直接處理自定義重複。 –
有時候,在代碼時間這樣做更方便,因爲保存調試器設置需要保存整個.DSK,這經常會導致痛苦。 –
...或者只是將16添加到表達式中。無需更改設置。 ;) –
如果您想要序號/字節值,只需輸入手錶表達式PAnsiChar(buffPtr)^,16
或PByte(buffPtr)^,16
。
這裏的訣竅是在逗號後添加模式重複的數量,如,16
。
這是恕我直言,比改變觀察屬性更方便,它與IDE的F7評估命令一起工作。
+1;整潔的把戲。 –
你試過把PAnsiChar(BufPtr)(沒有^)嗎? – jachguate