15,471
社区成员
发帖
与我相关
我的任务
分享
void CmyprojectDlg::OnBnClickedButton2()
{
DWORD threadID;
m_hThread=CreateThread(NULL,0,FuncThread,this,0,&threadID);
}
DWORD WINAPI FuncThread(LPVOID lpParamter)
{
CmyprojectDlg *dlg =(CmyprojectDlg*)lpParamter;
dlg->receive_data();
}
void CmyprojectDlg::receive_data(void)
{
// 初始化
int count=0;
int CountData=0; //CountData表示计数的数据,与1-71的互相关数据和72-89的自相关数据对应
int detected=0; //表示数据是否对齐,detected=1表示已经对齐
int ThisTrue=0;
int LastTrue=0;
for(int i=0;i<DATA_BUFFER;i++) //最终的数据
v_final[i]=0;
FILE *fp;
fopen_s(&fp,"data.txt","w+");
fclose(fp);
while(1)
{
memset(recv_buf,0,sizeof(recv_buf));
FD_ZERO(&readSet);
FD_SET(sClient,&readSet);
fopen_s(&fp,"data.txt","a");
if(FD_ISSET(sClient,&readSet))
{
iRecv=recvfrom(sClient,recv_buf,sizeof(recv_buf),0,(struct sockaddr*)&ser,&iLen_ser);
再对数据进行格式转换;
将数据对齐并排列;
v_final[k]=double(v);
fprintf_s(fp,"%d ",recv_buf[((j+1)*DATA_BUFFER/2-1)*2] +recv_buf[((j+1)*DATA_BUFFER/2- 1)*2+1]*256);
fprintf_s(fp,"\n");
fclose(fp);
}
closesocket(sClient);
WSACleanup( );
}