我們一般用cidr來表示一段ip位址。cidr是這樣乙個字串:先是乙個ipv4的位址的字串表示,加乙個」/「分隔符,再加乙個13(含)到27(含)之間的整數。比如「192.128.1.134/25」,表示從192.128.1.128(含)到192.128.1.255(含)的128個ip位址。
「/」前的字段「192.128.1.134」表示該範圍內的乙個ip位址(不一定是第乙個ip位址)。
「/」之後的整數「25」表示該位址段裡的所有ip位址的二進位制形式,前25個bit都是相同的,也就是都是」1100 0000 1000 0000 0000 0001 1」 。
輸出:如果ip在cidr內,輸出true。不然,輸出false
#include
#include
#include
/**校驗ip位址是否在cidr範圍內**/
bool check_lp_in_cidr(char* ip, char* cidr)
/**j復用歸零**/
j = 0;
/**針對cidr的四個部分分別處理**/
for( i=0; i<4; i++ )
int tail = 0;
for( ; cidr[j]!='\0'; j++)
tail = tail*10 + cidr[j] - '0';
/**計算掩碼**/
int mask = ( (1<
int main(void)
IP位址的合法性驗證 程式
這幾天做網路的課程設計,選了一道程式題 目的 掌握ip位址的分類,準確理解子網 掩碼的概念,確切地明了ip位址的合法格式。要求 1.在判斷乙個ip位址合法性時要自行編寫 不要使用任何inet函式。2.程式要求為命令列程式,格式為 ip test subnet mask ip addr 其中,程式名稱...
判斷IP位址的合法性 Java
有時候我們要對使用者輸入的ip位址進行校驗,判斷這個ip位址是不是乙個合法的ip位址。構造乙個正規表示式。判斷使用者的輸入與正規表示式是否匹配。若匹配則是正確的ip位址,否則ip位址格式錯誤。這裡的難點是如何構造出乙個可用的正規表示式。created by yangy on 2017 7 23.pu...
校驗xml的合法性
方法一 通過dtd 檔案方法二 通過xsd 檔案最後選用了方法二,原因如下 xml schema 可針對未來的需求進行擴充套件 xml schema 更完善,功能更強大 xml schema 基於 xml 編寫 xml schema 支援資料型別 xml schema 支援命名空間 太官方的理由。我...