switch语句执行顺序

来源:百度知道 编辑:UC知道 时间:2024/06/02 20:53:07
switch(irpStack->Parameters.DeviceIoControl.IoControlCode)
{
case IOCTL_ROOTKIT_INIT:
if ((inBufLength < sizeof(int) * 8) || (ioBuf == NULL))
{
status = STATUS_INVALID_BUFFER_SIZE;
break;
}
PIDOFFSET = (int) (*(int *)ioBuf);
FLINKOFFSET = (int) (*((int *)ioBuf+1));

break;
···
default:

我这里单步的时候发现没有判断第一个直接default了

那你应该把参数打印出来看一下了 是不是你想要的数据

从第一个case开始,先选case,没符合条件的执行default,不管default在哪都最后执行

case中的语句如果不止一条就要用{}括起来吧,我很久没用过了,不知道对不对