- 论坛徽章:
- 0
|
有没有那个函数能够检测一个字符串是不是一个合法的IP地址??
[quote]原帖由 "mq110"][/quote 发表:
这样总可以吧?
- unsigned int count_char( const char *buf, char chr )
- {
- char *ptr;
- unsigned int n;
- ptr=buf;
- n=0;
- for( ; ; ) {
- ptr=strchr(ptr,chr);
- if( ptr==NULL )
- break;
- else {
- n++;
- ptr++;
- }
- }
- return(n);
- }
- bool IsAddress( const char *ipstr )
- {
- int n;
- int a1, a2, a3, a4;
-
- if( count_char( ipstr, '.' ) != 3 )
- return( FALSE );
- n=sscanf( ipstr, "%d.%d.%d.%d", &a1, &a2, &a3, &a4 );
-
- if( n<4 || ( ( a1<0 || a1>;255 ) || (a2<0 || a2>;255 ) || (a3<0 || a3>;255 )
- || (a4<0 || a4>;255 ) ) )
- {
- return( FALSE );
- } else {
- return( TRUE );
- }
- }
复制代码 |
|