作者fire2 (最愛音樂了!)
看板C_and_CPP
標題[問題] 請問如何讀取多個陣列阿?
時間Tue Feb 17 14:01:42 2009
我現在使用封包分析軟體,將其結果產生出C語言陣列
但是產生出來的資料格式很奇怪
其格式如下
char pkt1[] = {0x88, 0x01, 0x2c};
char pkt2[] = {0x88, 0x01, 0x2c, 0x00};
char pkt3[] = {0x88, 0x01, 0x2c, 0x00};
.
.
.
char pkt100[] = {0x88, 0x01, 0x2c, 0x00};
現在想請問,當我讀完pkt1陣列,要怎麼自動轉換讀取pkt2陣列阿?
for (i=0 ; i < 100 ; i++){
printf("pkt%d[] = %s\n", i , pkt?[1]);
};
目前想法如上,但是?部分我就不知道要怎辦了
請問我這樣的做法對嘛??如果對,那麼?那邊該填入什麼呢??
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.138.178.154
1F:推 QQ29:我想到的辦法只能先用一個vector把這些陣列給串起來了... 02/17 14:07
2F:推 ms6163:用macro 02/17 14:11
3F:推 HudsonE:char *t= pkt1; printf(..., t); t+= strlen( t)+ 2; 02/17 14:34
4F:→ HudsonE:爛了不要找我卸卸 02/17 14:34
5F:推 fjm31714:## 還是 # 忘了... 02/17 14:35
6F:→ as0:##沒錯 02/17 14:36
7F:推 QQ29:樓上可以說詳細點嘛 想知道一下 02/17 14:59
8F:推 ledia:macro 是 compile time, 如果要用 ## 還是要把 1..100 列完 02/17 15:08
9F:→ ledia:我比較好奇的是, 既然都已經有 pkt1 到 pkt100 了 02/17 15:09
10F:→ ledia:為什麼不用個 editor 把它整理成比較好用的格式就好 02/17 15:09
11F:推 adrianshum:贊同樓上, 改一改變 2d array 就好了 02/17 15:16
12F:→ fire2:實際上pkt後的數字達到一萬多 所以...才需要用程式讀取 02/17 16:10
13F:推 luisugueto:原波 所以ledia才說用editor去取代不必要的字串 02/17 16:24
14F:→ fire2:editor要怎麼設定取代條件,才能夠方便C語言讀取呢?? 02/17 21:42
15F:→ fire2:重覆的字串不是只有char與pkt嗎?把pkt取代成其他變數名...? 02/17 21:45
16F:推 zog:留數字使之成2d array就好 其他的用空白取代 02/18 09:55
17F:→ fire2:每個陣列大小不相同,這樣沒辦法知道讀取到哪邊... 02/18 10:47
18F:推 sunneo:用程式碼產生程式碼吧 如果該程式產生的資料就是這樣 02/18 10:50
19F:→ sunneo:那麼弄個小程式產生讀取多個陣列到一個陣列的也好 02/18 10:50