- 在线时间
- 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>
% p i' a2 z3 [) a. }< >其中的int超出了取值范围的判断好像不太合理,请各位指教!</P>" J Z; o5 O; H3 C
< >int StringToInt(const char* szStr){; [% E3 U5 X8 p' [2 l x
int nResult = 0;
3 e6 i( y2 F! F8 s1 | //int nValue = 0; + Q7 e A+ E( k, b7 k) a1 |
const char* szTmp = szStr;! q0 u% h5 n' B6 J1 J, ^/ _5 q
while (*szTmp){, o; A1 c% B3 T& y9 ^. M
if(*szTmp >= 48 && *szTmp <= 57){
# ~" F* ~* C' w6 N8 ~ nValue = *szTmp-48; 9 _: J: K- @6 K" \* y. q
nResult = nResult*10+nValue;
8 ^2 _& d1 Y" G1 g4 _) c }0 e" }! A1 O/ d, |1 S, a) m
else {- R( `8 _1 x, j. d9 r5 W
return -1;
; g& R2 B3 \% i/ e+ I }& M; h) A: x! Z8 F: n
if( nResult < 0 ) return -1;//out of range*****就是这里了!4 U5 C6 m- I& J
szTmp++;
) o/ |2 Z! t! H! H; L) C- S }+ p3 Z! a2 B& {# X
return nResult;" l' T: [3 [+ X+ x/ J! y
}
+ G3 B3 @- U. b0 h# {7 V. @</P> |
zan
|