将IP地址转换为一个整数

来源:互联网 发布:apache maven 3.0.5 编辑:程序博客网 时间:2024/04/27 20:17
#include <stdio.h>#include <stdlib.h> union trans {        unsigned int i;        unsigned char c[4];}; int main(void) {        int i;        union trans t;        unsigned int t1,t2,t3,t4;        printf("input ip addr: ");        scanf("%d.%d.%d.%d",&t4,&t3,&t2,&t1);        t.c[3]=t4;        t.c[2]=t3;        t.c[1]=t2;        t.c[0]=t1;        if(t1>254 || t1<1) {                printf("t1=%d input error./n",t1);                exit(-1);        }        if(t2>255 || t2<0) {                printf("t2=%d input error./n",t2);                exit(-1);        }        if(t3>255 || t3<0) {                printf("t3=%d input error./n",t3);                exit(-1);        }        if(t4>223 || t1<1) {                printf("t4=%d input error./n",t4);                exit(-1);        }        printf("int is %d/n",t.i);        exit(0);}