給定乙個ip位址,例如:
乙個ip位址為10.0.3.193
每段數字 相對應的二進位制數
10 00001010
0 00000000
3 00000011
193 11000001
組合起來即為:00001010 00000000 00000011 11000001,轉換為10進製數就是:167773121,即該ip位址轉換後的數字就是它了。
解題思路:
1、把所給ip位址進棧,從棧頂到棧底依次為:193 3 0 10
2、自棧頂往下將沒個數字變為二進位製入佇列,如193 3 0 10變為二進位製入佇列:10000011 11000000 00000000 01010000
3、佇列操作,自對頭至隊尾,遇1則加其2的n(佇列中位置)次方即可
#include
#include
#include
#include
#include
using
namespace std;
intmain()
while
(!st.
empty()
)}while
(n)while
(total%8)
st.pop();
}int sum=0;
for(
int i=0;
!qu.
empty()
;i++
) sum=sum+num2;
} qu.
pop();
} cout
}
IP位址轉 整數互相轉換
知識點 乙個二進位制數,按位左移n位,就是把該數的值乘以2的n次方 二進位制除二即右移一位 1 ip位址轉換為整數 乙個無符號32為整數。每段數字 相對應的二進位制數 10 00001010 0 00000000 3 00000011 193 11000001 public class ip pub...
IP位址與整數之間的轉換
1 ip位址轉換為整數原理 ip位址每段可以看成是8位無符號整數即0 255,把每段拆分成乙個二進位制形式組合起來,然後把這個二進位制數轉變成 乙個無符號32為整數。舉例 乙個ip位址為10.0.3.193 每段數字 相對應的二進位制數 10 00001010 0 00000000 3 000000...
IP位址與整數之間的轉換
ip位址與整數之間的轉換 1 ip位址轉換為整數 每段數字 相對應的二進位制數 10 00001010 0 00000000 3 00000011 193 11000001 組合起來即為 00001010 00000000 00000011 11000001,轉換為10進製就是 167773121,...