全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:695
推到 Plurk!
推到 Facebook!

如何判斷該使用哪一各資料結構?

尚未結案
裝傻
一般會員


發表:11
回覆:14
積分:5
註冊:2005-03-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-07-28 13:59:19 IP:60.248.xxx.xxx 未訂閱
各位大大好 我想請問一個問題 當我在資料結構上建了很多種資料結構 當我要傳送A的資料結構過去 但是對相要怎麼知道我是傳送A的資料結構內? 例如: 今天我在TEST.h建了兩個資料結構  
 
struct A{        long            length;
    char            DeviceType;
} ;
struct B{        char     Name[7];
    long     Time;    } ; 
我傳送A資料過去,對方要如何正確接收我的資料內? 還是說我要再建一各資料的表頭檔 利用表頭檔的類別來判斷該使用哪一各資料結構 但是我該如何做內? 謝謝
bass15
高階會員


發表:24
回覆:171
積分:119
註冊:2003-10-27

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-07-28 17:11:11 IP:61.66.xxx.xxx 未訂閱
不知道你所謂"傳過去"是指怎麼傳? 通常是用 sizeof(A) == sizeof(B) 來判斷傳過來的A跟B是不是一樣..
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-07-30 23:24:06 IP:211.22.xxx.xxx 未訂閱
C COMPILER在做編譯階段中的一件事,就是型態檢查,如果型態不符合那絕對編譯不過去,如果型態可以相容,多數的COMPILER還是會發出「抱怨」(WARNING),因此此時如果確定傳的型別是正確的,最好還是強制轉換(MASK)。所以我覺得裝傻兄可能多慮了!還是裝傻兄有其它的需求? ---------------------------------------------- We will either find a way, or make one. -Hannibal -。 發表人 - stallion 於 2005/07/30 23:24:47
cashyy
高階會員


發表:117
回覆:322
積分:212
註冊:2004-04-30

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-08-01 01:20:54 IP:59.104.xxx.xxx 未訂閱
您好! 小弟的做法是在結構中各加一個命令! 如:
struct A
{
  int command;  //用命令來判斷是要用那個結構收!
  long length;
  char DeviceType;
} ;
struct B
{
  int command;
  char Name[7];
  long Time;
} ; 
傳送後,接收端只要判斷command就可以知道用那個結構來收了! 不知是否為您要的!
系統時間:2024-05-18 4:31:18
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!