討論區快速選單
知識庫快速選單
手把手帶你Android開發實務 政府補助!學嵌入式+物聯網
[ 回上頁 ] [ 討論區發言規則 ]
FTP程式中,Client端如何得知所有封包已收完,進而跳出while loo
更改我的閱讀文章字型大小
作者 : thekite(謝小美)
[ 貼文 4 | 人氣 742 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2008/10/29 下午 04:15:07
小妹有個問題向各位高手請教

日前我利用udp socket 寫了一個ftp程式

  server端要做的是:傳不固定大小的packet

  Client端要做的是;收封包,並辨別是否收完,進而自己跳出while(1){.....}的迴圈。 [小妹的目前做法
           很笨,只能預設每次都傳106byte,然而如果每次都傳不一樣的大小,這種寫法並
           不能general]


client端部分source code 如下:

 fptr=fopen("base.264", "wb");
    while(1)
    {
     Len=recvfrom(SockFD,
     &tmp,
     106,
     0,
     &Addr,
     &AddrLen);

     if(sizeof(Len)>0){
    
     for(i=12;i<Len;i++){ //前12byte是小妹自行加上的rtp header,暫時用不到先不理他

     fputc(tmp[i],fptr);
     printf("rev: loop: %d temp[%d]: %x\n",j,i-12,tmp[i]);
     fflush(fptr);
     }
     }
     j=j+1;

    
     if(j == 1){
     printf("! Break !\n");
     break;
     }
    
    }
     fclose(fptr);





-

請各位高手不吝給予提點,十分感激~



作者 : terenas(風) 貼文超過200則
[ 貼文 490 | 人氣 7440 | 評價 680 | 評價/貼文 1.39 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2008/10/29 下午 05:34:08
跟client 講你總共要收多少bytes 不就好了.
作者 : thekite(謝小美)
[ 貼文 4 | 人氣 742 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2008/10/29 下午 05:47:47
謝謝
 板主 : 徵求中
 > 通訊網路 - 討論區
 - 最近熱門問答精華集
 - 全部歷史問答精華集
 - 通訊網路 - 知識庫
  ■ 全站最新Post列表
  ■ 我的文章收藏
  ■ 我最愛的作者
  ■ 全站文章收藏排行榜
  ■ 全站最愛作者排行榜
  ■  月熱門主題
  ■  季熱門主題
  ■  熱門主題Top 20
  ■  本區Post排行榜
  ■  本區評價排行榜
  ■  全站專家名人榜
  ■  全站Post排行榜
  ■  全站評價排行榜
  ■  全站人氣排行榜
 請輸入關鍵字 
  開始搜尋
 
Top 10
評價排行
通訊網路
1 ozzy 230 
2 williamhu99 50 
3 joe 30 
4 chengcti 30 
5 小中中 30 
6 小水瓶 20 
7 包租婆 20 
8 賽伯蛀蟲 10 
9 風月 10 
10 lingo 10 
通訊網路
  專家等級 評價  
  一代宗師 10000  
  曠世奇才 5000  
  頂尖高手 3000  
  卓越專家 1500  
  優秀好手 750  
Microsoft Internet Explorer 6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2018 程式設計俱樂部 http://www.programmer-club.com.tw/
0.015625