我正在撰寫一個代理服務器,并且我有一個包含子網 (n1.n2.n3.n4/x) 和主機名的過濾器檔案。應該忽略它第一個 x MSB 與串列中的一個相同的每個 IP 地址,因此作為主機名。
我最初的想法是讀取檔案并保存兩個串列;
首先
struct Subnet{
char* IP
int mask
Subnet* next
};
第二
struct Host_name{
char* host
Host_name* next
};
但我認為使用一些現有的結構(例如in addr)會更好。
我將不勝感激有關該主題的任何建議
uj5u.com熱心網友回復:
您應該選擇最適合您的程式的格式。
因為您要比較位和位元組,所以二進制格式(例如struct in_addr)對您的程式更方便。
如果將其存盤為文本 ( char*),則每次訪問串列時都必須將其轉換為二進制格式。
最好在讀取組態檔的時候進行資料的轉換,這樣程式只需要轉換一次資料即可。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/387189.html
