再次请教各位高手!!!这个程序段的目的是删除邮箱中的全部邮件。用stat信息将邮箱的邮件数返回到no(十位)和nol(个位)
程序: char *pn ;
char *pnl ;


char no  ;
char nol;


pn = &no;
pnl = &nol;

no = 49 ;// '1'49 假设邮箱的邮件数是12
nol = 50 ;// '2'50//dele do 
{ if( (no>48)&&(nol>48) )//当大于10
{ send(sockClient,"dele ",strlen("dele "),0);

send(sockClient,pn,strlen(pn),0);

send(sockClient,pnl,strlen(pnl),0);

send(sockClient,"\r\n",strlen("\r\n"),0);

recv(sockClient,recvBuf,100,0);

printf("dele %c%c:%s\r\n",no,nol,recvBuf); ZeroMemory(recvBuf, sizeof(recvBuf) );
nol--; }
else if ( (no>48)&&(nol==48) )//当是x0
{
send(sockClient,"dele ",strlen("dele "),0);

send(sockClient,pn,strlen(pn),0);

send(sockClient,pnl,strlen(pnl),0);

send(sockClient,"\r\n",strlen("\r\n"),0);

recv(sockClient,recvBuf,100,0);

printf("dele %c%c:%s\r\n",no,nol,recvBuf); ZeroMemory(recvBuf, sizeof(recvBuf) );
no--;

nol = 57;
} else if ( (no == 48)&&(nol > 48) )//当是个位数
{
send(sockClient,"dele ",strlen("dele "),0);

// send(sockClient,pn,strlen(pn),0);

send(sockClient,pnl,strlen(pnl),0);

send(sockClient,"\r\n",strlen("\r\n"),0);

recv(sockClient,recvBuf,100,0);

printf("dele %c%c:%s\r\n",no,nol,recvBuf); ZeroMemory(recvBuf, sizeof(recvBuf) );
nol--;
}

 else  ; } while( (no != 48)||(nol != 48) );
这样做以后出现第一次删12时ok,但删11和10时都说是无效邮件号,然后删9到2都ok,删1时又说是无效邮件号
这是为什么呢?显示的信息如下。
connect(220):+OK
user:+OK
pass+OK
dele 12:+OK Deleted.dele 11:-ERR Invalid message number.dele 10:-ERR Invalid message number.dele 09:+OK Deleted.dele 08:+OK Deleted.dele 07:+OK Deleted.dele 06:+OK Deleted.dele 05:+OK Deleted.dele 04:+OK Deleted.dele 03:+OK Deleted.dele 02:+OK Deleted.dele 01:-ERR Invalid message number.Press any key to continue