for(i=0; i<sizeof(buff); i++)
{
recv(sockfd, buff+i, 1, 0); //+i是因為資料會從前面掉出去
if(i>=1 && memcmp(buff+i-1, "\r\n", 2)==0)
break;
}
buff[i-1]='\0';
//現在buff裡是9\0 我想把9賦值給int size
#include <stdio.h>
#include <stdlib.h>
int main()
{
char buff[4] = {'9','8','0','\0'};
int size;
size = atoi(buff);
printf("size=%d\n", size);
return 0;
}
另外
這裡用 \0 判斷
而前面的 if 用 \r\n 判斷
沒意外的話
應該還是會錯...
recv寫在for迴圈裡面
也是另一個雷點...