- 在线时间
- 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( |% \& C- f' s< >其中的int超出了取值范围的判断好像不太合理,请各位指教!</P>' E- _; L5 L* M1 @0 X) \( U
< >int StringToInt(const char* szStr){
& A' j8 I' H: o3 [% @ int nResult = 0;
1 h% U o; W( {% v6 v //int nValue = 0; ! k7 ^: ?! [" Z& P
const char* szTmp = szStr;
7 t4 O3 W/ k) u D while (*szTmp){5 B7 Q2 s e2 O7 ^
if(*szTmp >= 48 && *szTmp <= 57){ ' p% J- |6 v0 C
nValue = *szTmp-48; + F: s- V+ v5 F9 H$ n; d9 _7 O
nResult = nResult*10+nValue;
8 |9 I: [- t9 i1 ~8 W, S& @8 u }
& ?7 `* }* ~7 I' n0 S) n5 ~, P else {
+ {. v F/ F* B" d* _ return -1;
& I0 Q- h9 A9 Z" \1 j8 K6 ` } q6 ~% }/ a, b. h1 O
if( nResult < 0 ) return -1;//out of range*****就是这里了!
* \9 M7 s& @) L7 w- s szTmp++;% z, j; z- U8 e4 H) W% Y1 j
}) w- x+ I+ G$ J& \3 ^( ?* k
return nResult;3 z# s0 `' R j2 `% K" M
}
( W0 ?, f8 P9 j1 | \0 Y* z</P> |
zan
|