static int findNum( const char* str)
{
char Num[8];
int i = 0;
int reval = -1;
const char* p = str;
while ( *p && ((*p > '9') || (*p < '0'))) p++;
if ( *p ) {
while (*p <= '9' && *p >= '0' ) {
Num[i++]= *p++;
}
}
else {
return reval;
}
if ( strlen(Num) == 0 ) { return reval; }
for ( i = 0; i < 8 && Num[i] != '/0'; ++i ) {
reval += Num[i]- '0';
}
return reval;
}
=============================================
今天用到,自己乱写了一个,不过和贴出来的有差别,用的不是数组,是string, 而且用了 StrToInt 函数。
改进一下很容易实现在找出若干个数字来。
{
char Num[8];
int i = 0;
int reval = -1;
const char* p = str;
while ( *p && ((*p > '9') || (*p < '0'))) p++;
if ( *p ) {
while (*p <= '9' && *p >= '0' ) {
Num[i++]= *p++;
}
}
else {
return reval;
}
if ( strlen(Num) == 0 ) { return reval; }
for ( i = 0; i < 8 && Num[i] != '/0'; ++i ) {
reval += Num[i]- '0';
}
return reval;
}
=============================================
今天用到,自己乱写了一个,不过和贴出来的有差别,用的不是数组,是string, 而且用了 StrToInt 函数。
改进一下很容易实现在找出若干个数字来。