初学Socket,写了一个局域网通信的C程序,虽然可以正常运行,但是出现了一个警告,求解决

一下是服务器代码(只有服务器出错了)

#include
#include
#include
#pragma comment (lib,"WS2_32.lib")

SOCKADDR_IN cAddr = {0};

int len = sizeof(cAddr);

SOCKET clientSocket[1024];

int count = 0;

void tongxin(int idx) {

char buff[1024];
int r;
int i;
while(1) {
    r = recv(clientSocket[idx],buff,1023,0);
    if(r > 0)
    {
        buff[r] = 0;
        printf("%d:%s\n",idx,buff);

        for(i = 0; i < count; i++){
            send(clientSocket[i],buff,strlen(buff),0);
        }
    }
}

}

int main(int argc, char *argv[]) {

WSADATA wsaData;
WSAStartup(MAKEWORD(2,2),&wsaData);

if(LOBYTE(wsaData.wVersion) != 2
    || HIBYTE(wsaData.wVersion) != 2)
{
    printf("加载的套接字版本不一致!\n");
    system("pause");
    return 0;
}

//创建套接字
SOCKET serveSocket = socket(AF_INET,SOCK_STREAM,0);
if(serveSocket == SOCKET_ERROR)
{
    printf("创建socket失败!\n");
    WSACleanup();
    system("pause");
    return 0; 
 } 

 //创建服务器地址族
 SOCKADDR_IN addr = {0};
 addr.sin_family = AF_INET;
 addr.sin_addr.S_un.S_addr = inet_addr("192.168.1.5");
 addr.sin_port = htons(10086);

//绑定
int r = bind(serveSocket,(struct sockaddr*)&addr,sizeof(addr));
if(r == -1)
{
    printf("bind失败!\n");
    closesocket(serveSocket);
    WSACleanup();
    system("pause");
}

//监听
r = listen(serveSocket,10);
if(-1 == r)
{
    printf("监听失败!\n");
    closesocket(serveSocket);
    WSACleanup();
    system("pause");
    return 0;
 } 

 //等待客户端连接    

 while(1) {
     clientSocket[count] = accept(serveSocket,(struct sockaddr*)&cAddr,&len);
     if(clientSocket[count] == SOCKET_ERROR)
     {
        printf("服务器宕机了!\n");
        closesocket(serveSocket);
        WSACleanup();
        system("pause");
        return 0;
     }

     printf("有客户端连接到了服务器: %s\n",inet_ntoa(cAddr.sin_addr));

     CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)tongxin,(char*)count,0,NULL);
     count++;
 }

return 0;

}
警告信息为:D:\dev-c++\dev-c++文档\网络聊天\服务器端\main.c In function 'main':
94 56 D:\dev-c++\dev-c++文档\网络聊天\服务器端\main.c [Warning] cast to pointer from integer of different size [-Wint-to-pointer-cast]

似乎是说CreateThread()第四个参数不对,而客户端由于我写的是NULL,所以没有警告。这个怎么解决?谢谢。

cast to pointer from integer of different size [-Wint-to-pointer-cast]
第四个参数你加上一个转换,这是说指针的大小不同。

第四个参数是传给线程的参数,你看看应该是什么类型,你为何要转为char*