here.Receive((void*)buf,sizeof(buf));  //here是一个CSocket的对象 buf是char 型的数组
     MsgStruct *buff=(MsgStruct*)buf;    
 CString s=buf;
 MessageBox(NULL,s,"确定是否正确",MB_OK);
 char  str2[10];
 CString str1;
 for (int i=0;i<10;i++)
 {
 str2[i]=buff->user[i];
 str1.Format("%c",str2[i]);
         MessageBox(NULL,str1,"确定是否正确",MB_OK);!用这个进行过程查看显示的是正常的 2010120213
 }
    CString  str=str2; 
     MessageBox(NULL,str,"确定是否正确",MB_OK);//但是在这儿显示的是:2010120213后跟buf中的一部分数据不知道是啥原因?????请指点!!!!!!!!MsgStruct是我自己定义的一个数据结构:
typedef struct  MsgStruct{
char   useful;
char   stop;
char   conreturn;
char   user[10];
char   friends[10];
sockaddr_in  usersock;
}MsgStruct;