- 在线时间
- 0 小时
- 最后登录
- 2005-5-5
- 注册时间
- 2005-5-5
- 听众数
- 0
- 收听数
- 0
- 能力
- 0 分
- 体力
- 55 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 17
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1
- 主题
- 1
- 精华
- 0
- 分享
- 0
- 好友
- 0
升级   12.63% 该用户从未签到
 |
< >我写了一个这样的函数,想把字符串转化为int型的,代码如下,</P>
) m S0 S4 x k @0 Y< >其中的int超出了取值范围的判断好像不太合理,请各位指教!</P>3 M9 G. Q- b8 F2 _' v
< >int StringToInt(const char* szStr){
% o- ]+ w2 o1 { int nResult = 0;( t7 i1 r7 m0 e9 N2 G
//int nValue = 0; " M+ N% }3 I) L9 `# p# c2 V1 P
const char* szTmp = szStr;
! F2 U: h. O1 N, R; q. F; V while (*szTmp){
. h' a& A1 o8 H3 _" _& E# t if(*szTmp >= 48 && *szTmp <= 57){ 8 ^- ~" h; c5 \2 N; m+ D
nValue = *szTmp-48; 8 n- e7 E- }, _6 I8 U, k' s
nResult = nResult*10+nValue;
1 u; K0 R9 X) G! ]8 y! N }/ W j, i* Y( W8 Y2 t* z
else {- F3 p2 W' z1 S; q
return -1;; [ N# M! G0 U( ?) d7 p
}
( d4 C! a0 h+ V( z" o if( nResult < 0 ) return -1;//out of range*****就是这里了!
1 r' r$ ~* u- O/ e szTmp++;
+ @' o; ^, I6 P9 b( G }7 [ s6 w; S, ^1 O$ a
return nResult;3 u8 G% G: o$ d7 x
}* r0 P, }6 U! |/ e$ d" ]
</P> |
zan
|