求一个IP地址和子网掩码的校验方法实现方法
输入一个字符串,判断是否是合法的IP地址或子网掩码 
 IP地址格式(不包括[]) 
 [1-254].[0-254].[0-254].[0-254]   
 子网掩码为前面是连续的1,然后全是0 
 转换成2进制是这样   
 sample:   
 11111111.11100000.00000000.00000000 
 10000000.00000000.00000000.00000000 
 11111111.11111111.11111111.10000000 
------解决方案--------------------public bool 检查IP(string IP) 
 { 
     string[] vList = IP.Split( '. '); 
     if (vList.Length != 4) return false; 
     for (int j = 0; j  < vList.Length; j++) 
     { 
         int i; 
         if (!int.TryParse(vList[j], out i)) return false; 
         if ((i  < 0) || (i >  254)) return false; 
         if ((i == 0) && (j == 0)) return false; 
     } 
     return true; 
 }   
 public bool 检查掩码(string 掩码) 
 { 
     string[] vList = 掩码.Split( '. '); 
     if (vList.Length != 4) return false;   
     bool vZero = false; // 出现0 
     for (int j = 0; j  < vList.Length; j++) 
     { 
         int i; 
         if (!int.TryParse(vList[j], out i)) return false; 
         if ((i  < 0) || (i >  255)) return false; 
         if (vZero)  
         { 
             if (i != 0) return false; 
         } 
         else 
         { 
             for (int k = 7; k > = 0; k--) 
                 if (((i > >  k) & 1) == 0) // 出现0 
                     vZero = true; 
                 else if (vZero) return false; // 不为0 
         } 
     } 
     return true; 
 }   
 private void button1_Click(object sender, EventArgs e) 
 { 
     MessageBox.Show(检查IP( "1.0.0.127 ").ToString()); 
     MessageBox.Show(检查IP( "261.0.0.127 ").ToString()); 
     MessageBox.Show(检查IP( "0.0.0.127 ").ToString()); 
     MessageBox.Show(检查掩码( "255.252.0.0 ").ToString()); 
     MessageBox.Show(检查掩码( "255.0.0.1 ").ToString()); 
     MessageBox.Show(检查掩码( "255.255.255.255 ").ToString()); 
 }