Pseudo Registers
| Pseudoregister | Description | 
| @ERR | Last error value; the same value returned by the  | 
| @TIB | Thread information block for the current thread; necessary because the debugger doesn't handle the "FS:0" format | 
| @CLK | Undocumented clock register; usable only in the Watch window | 
| @EAX, @EBX, @ECX, @EDX, @ESI, @EDI, @EIP, @ESP, @EBP, @EFL | Intel CPU registers | 
| @CS, @DS, @ES, @SS, @FS, @GS | Intel CPU segment registers | 
| @ST0, @ST1, @ST2, @ST3, @ST4, @ST5, @ST6, @ST7 | Intel CPU floating-point registers | 
@ERR
 最后错误值; 和GetLastError() API 函数一致
 
@TIB
 当前线程信息; 在调试器无法处理”FS:0”格式的时候是必要的
 
@CLK
 未列入文档的时钟寄存器; 只是在Watch窗口适用
 
@EAX, @EBX, @ECX, @EDX, @ESI, @EDI, @EIP, @ESP, @EBP, @EFL
 Intel CPU 寄存器
 
@CS, @DS, @ES, @SS, @FS, @GS
 Intel CPU 段寄存器
 
@ST0, @ST1, @ST2, @ST3, @ST4, @ST5, @ST6, @ST7
 Intel CPU 浮点寄存器
 
其中@TIB很有用,可以用在多线程调试的时候作为断点的条件变量.这样就可以只观察一个线程的执行情况.
另一个常用的@err,hr
(X64 Debugging With Pseudo Variables And Format Specifiers)
Pseudo Variable     Description
$handles     Number of handles to kernel objects
$vframe     Current stack frame address
$TID     Current thread identifier
$registername     Contents of specified register
$clk     Time in clock cycles
$user     Process and thread token information
vs调试时,watch窗口变量名后,加参数指定编码显示, 解决“字符串中字符无效”等问题
Specifier     Description 
D    Decimal
U    Unsigned decimal
O    Octal
X    Hexadecimal  //16进制查看
F    Floating point
E    Scientific notation
C    Character
S    Character string
Su    Unicode string
s8    UTF-8 string  //将字符串转成unicode展示
Hr    HRESULT or Win32 error code  // 查看Windows HRESULT解释
wc    Windows class
wm    Windows message //Windows消息,例如0x0010, wm 显示 WM_CLOSE
!     Raw format
            
数字  将变量拆分为数组显示, 数字是要显示多少位, 此法对const char*这类原始字符串非常有用
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号