KdPrint((
"Unknown IoControlCode %#x\n",
io_stack->Parameters.DeviceIoControl.IoControlCode
));
Run Code Online (Sandbox Code Playgroud)
有点奇怪。尖锐的意思是什么?
printf 文档说:
\n\n\n\n\n字符 % 后跟零个或多个以下标志:
\n\n# 该值应转换为 \xe2\x80\x98\xe2\x80\x98 替代形式\xe2\x80\x99\xe2\x80\x99。对于 o 转换,输出字符串的第一个字符为零(如果它还不是零,则在前面加上 0)。对于 x 和 X 转换,\n 非零结果\n 的字符串 \xe2\x80\x980x\xe2\x80\x99 (或 X 转换的 \xe2\x80\x980X\xe2\x80\x99)前缀为\n 它。对于 a、A、e、E、f、F、g 和 G\n 转换,结果将始终\n 包含小数点,即使后面没有数字\n(通常,会出现小数点\n\n) n 仅当后面有数字时才出现在这些转换的结果中)。\n 对于 g 和 G 转换,尾随零不会像其他情况那样从结果中删除。对于其他转换,结果未定义。
\n
有关标志的 MSDN 文档位于此处。
\n\n因此%#x该值只需以 为前缀0x。哪里%x会屈服34ab,哪里%#x就会屈服0x34ab。