- 在线时间
- 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>6 c; E* U$ h! I! x/ L; ^
< >其中的int超出了取值范围的判断好像不太合理,请各位指教!</P>0 E: h" ]" o( j# I$ L2 j
< >int StringToInt(const char* szStr){
0 J! M t0 S; ?' v3 e. r int nResult = 0;3 d' [3 U7 |+ i6 X+ ~1 a
//int nValue = 0; $ \+ E& }* h# Y7 J$ V% g2 U' x3 U; s
const char* szTmp = szStr;
# U8 |* q) X, s3 \0 Y5 d6 Q while (*szTmp){
. ~/ Q* \+ r0 O# U if(*szTmp >= 48 && *szTmp <= 57){ 9 X5 K6 Y0 T# w! O
nValue = *szTmp-48;
- U/ q" \ h5 t$ I, Y6 n nResult = nResult*10+nValue;
- V3 r' M! w2 \ }
( |# v: U1 B; ?' v+ I8 b else {4 \4 y9 B$ f; y+ I) X1 z
return -1;6 N1 E1 o: |3 q6 g; b1 c0 H$ r
}; i: N, z1 G& [" b
if( nResult < 0 ) return -1;//out of range*****就是这里了!. {8 {. O& T6 w6 j+ ?
szTmp++;! p$ \4 d, U2 d/ z' V, H
}3 h+ A8 W1 a; k9 A5 J% t- W
return nResult;1 T: W- c" ^+ K6 a
}
7 e' N; _2 H7 V$ o. {</P> |
zan
|