青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 505  文章 - 1034  trackbacks - 0
<2007年9月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456


子曾經曰過:編程無他,唯手熟爾!

常用鏈接

留言簿(94)

隨筆分類(649)

隨筆檔案(505)

相冊

BCB

Crytek

  • crymod
  • Crytek's Offical Modding Portal

Game Industry

OGRE

other

Programmers

Qt

WOW Stuff

搜索

  •  

積分與排名

  • 積分 - 923313
  • 排名 - 14

最新隨筆

最新評論

閱讀排行榜

評論排行榜

atoi使用時要注意了

這樣子寫有問題,可能導致down掉,因為ch沒有結束符.但是我沒看出怎么當的

2007-10-09  下面這個程序不會當,但是 number 的值可能不是預期的。

int _tmain(int argc, _TCHAR* argv[])
{
    
char ch[1= {0};
    ch[
0= '9';

    
int number = ::atoi(ch);

    std::cout 
<< number << std::endl;

    
return 0;
}

以下是atox.c的源碼:
/***
*atox.c - atoi and atol conversion
*
*       Copyright (c) Microsoft Corporation. All rights reserved.
*
*Purpose:
*       Converts a character string into an int or long.
*
******************************************************************************
*/

#include 
<cruntime.h>
#include 
<stdlib.h>
#include 
<ctype.h>
#include 
<mtdll.h>
#include 
<tchar.h>
#ifdef _MBCS
#undef _MBCS
#endif  /* _MBCS */

#ifndef _UNICODE
#define _tchartodigit(c)    ((c) >= '0' && (c) <= '9' ? (c) - '0' : -1)
#else  /* _UNICODE */
int _wchartodigit(wchar_t);
#define _tchartodigit(c)    _wchartodigit((wchar_t)(c))
#endif  /* _UNICODE */

/***
*long atol(char *nptr) - Convert string to long
*
*Purpose:
*       Converts ASCII string pointed to by nptr to binary.
*       Overflow is not detected.
*
*Entry:
*       nptr = ptr to string to convert
*
*Exit:
*       return long int value of the string
*
*Exceptions:
*       None - overflow is not detected.
*
******************************************************************************
*/

long __cdecl _tstol(
        
const _TCHAR *nptr
        )
{
        
int c;              /* current char */
        
long total;         /* current total */
        
int sign;           /* if '-', then negative, otherwise positive */
#if defined (_MT) && !defined (_UNICODE)
        pthreadlocinfo ptloci 
= _getptd()->ptlocinfo;

        
if ( ptloci != __ptlocinfo )
            ptloci 
= __updatetlocinfo();

        
/* skip whitespace */
        
while ( __isspace_mt(ptloci, (int)(_TUCHAR)*nptr) )
#else  /* defined (_MT) && !defined (_UNICODE) */
        
while ( _istspace((int)(_TUCHAR)*nptr) )
#endif  /* defined (_MT) && !defined (_UNICODE) */
            
++nptr;

        c 
= (int)(_TUCHAR)*nptr++;
        sign 
= c;           /* save sign indication */
        
if (c == _T('-'|| c == _T('+'))
            c 
= (int)(_TUCHAR)*nptr++;    /* skip sign */

        total 
= 0;

        
while ( (c = _tchartodigit(c)) != -1 ) {
            total 
= 10 * total + c;     /* accumulate digit */
            c 
= (_TUCHAR)*nptr++;    /* get next char */
        }

        
if (sign == '-')
            
return -total;
        
else
            
return total;   /* return result, negated if necessary */
}


/***
*int atoi(char *nptr) - Convert string to long
*
*Purpose:
*       Converts ASCII string pointed to by nptr to binary.
*       Overflow is not detected.  Because of this, we can just use
*       atol().
*
*Entry:
*       nptr = ptr to string to convert
*
*Exit:
*       return int value of the string
*
*Exceptions:
*       None - overflow is not detected.
*
******************************************************************************
*/

int __cdecl _tstoi(
        
const _TCHAR *nptr
        )
{
        
return (int)_tstol(nptr);
}

#ifndef _NO_INT64

__int64 __cdecl _tstoi64(
        
const _TCHAR *nptr
        )
{
        
int c;              /* current char */
        __int64 total;      
/* current total */
        
int sign;           /* if '-', then negative, otherwise positive */
#if defined (_MT) && !defined (_UNICODE)
        pthreadlocinfo ptloci 
= _getptd()->ptlocinfo;

        
if ( ptloci != __ptlocinfo )
            ptloci 
= __updatetlocinfo();

        
/* skip whitespace */
        
while ( __isspace_mt(ptloci, (int)(_TUCHAR)*nptr) )
#else  /* defined (_MT) && !defined (_UNICODE) */
        
while ( _istspace((int)(_TUCHAR)*nptr) )
#endif  /* defined (_MT) && !defined (_UNICODE) */
            
++nptr;

        c 
= (int)(_TUCHAR)*nptr++;
        sign 
= c;           /* save sign indication */
        
if (c == _T('-'|| c == _T('+'))
            c 
= (int)(_TUCHAR)*nptr++;    /* skip sign */

        total 
= 0;

        
while ( (c = _tchartodigit(c)) != -1 ) {
            total 
= 10 * total + c;     /* accumulate digit */
            c 
= (_TUCHAR)*nptr++;    /* get next char */
        }

        
if (sign == _T('-'))
            
return -total;
        
else
            
return total;   /* return result, negated if necessary */
}

#endif  /* _NO_INT64 */
posted on 2007-09-28 09:19 七星重劍 閱讀(1699) 評論(1)  編輯 收藏 引用 所屬分類: PL--c/c++

FeedBack:
# re: atoi使用時要注意了 2007-10-09 10:07 rise
好像在vs2003可以通過。  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
      <noscript id="pjuwb"></noscript>
            <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
              <dd id="pjuwb"></dd>
              <abbr id="pjuwb"></abbr>
              欧美综合国产| 欧美一区二区三区视频| 蜜桃av综合| 老司机67194精品线观看| 亚洲电影专区| 亚洲精品小视频| 国产精品v欧美精品v日韩精品| 亚洲午夜在线观看| 亚洲免费在线看| 一区二区三区在线不卡| 欧美激情一区二区三区蜜桃视频 | 亚洲一区久久久| 宅男在线国产精品| 国产日本欧美视频| 欧美韩日一区二区| 欧美日韩亚洲网| 久久狠狠亚洲综合| 欧美成人激情视频| 亚洲欧美乱综合| 久久躁日日躁aaaaxxxx| 一区二区高清视频| 欧美亚洲一区二区三区| 亚洲国产高清高潮精品美女| 日韩天堂在线视频| 国产一本一道久久香蕉| 亚洲国产日韩欧美在线动漫| 欧美天堂亚洲电影院在线观看 | 先锋影音久久久| 久久亚裔精品欧美| 午夜久久久久久久久久一区二区| 欧美中文字幕在线播放| 一级日韩一区在线观看| 久久精品成人欧美大片古装| 99视频精品| 久久精品国产77777蜜臀| 中文欧美字幕免费| 久久亚洲综合色一区二区三区| 亚洲伊人第一页| 欧美不卡在线视频| 久久性天堂网| 国产精品视频内| 亚洲美女av在线播放| 在线观看日韩av| 午夜久久美女| 亚洲欧美影院| 欧美性一区二区| 亚洲激情黄色| 亚洲国产一区在线| 久久精品夜色噜噜亚洲a∨| 亚洲欧美日产图| 欧美人与性动交α欧美精品济南到| 久久久水蜜桃| 国产视频一区二区在线观看| 在线视频欧美日韩精品| 一本久久综合亚洲鲁鲁五月天| 久久久久国产成人精品亚洲午夜| 午夜精品区一区二区三| 欧美视频一区在线观看| 日韩视频二区| 一本不卡影院| 欧美日韩国产精品成人| 亚洲国产婷婷综合在线精品| 91久久久国产精品| 免费一级欧美在线大片| 亚洲国产精品久久久久秋霞蜜臀| 亚洲大片av| 免费在线看一区| 亚洲高清不卡一区| 亚洲黄色免费| 欧美成人一品| 亚洲九九精品| 亚洲香蕉成视频在线观看 | 欧美一区二区免费| 欧美在线免费观看视频| 国产欧美日韩亚洲一区二区三区| 亚洲免费在线精品一区| 久久国产手机看片| 国产一区二区三区四区| 久久精品国产在热久久| 欧美77777| 日韩视频在线播放| 欧美三日本三级少妇三2023| 一区二区三区三区在线| 欧美伊久线香蕉线新在线| 国产在线拍揄自揄视频不卡99| 久久精品国产亚洲精品| 亚洲高清成人| 亚洲欧美激情视频| 国产区精品视频| 美女视频一区免费观看| 一本久道久久久| 欧美在线日韩精品| 亚洲国产精品综合| 欧美视频一区在线| 欧美一区二区三区日韩| 欧美激情一区二区三区成人| 亚洲天堂网在线观看| 国产一级一区二区| 欧美精品性视频| 亚洲欧美日韩精品一区二区| 欧美电影在线| 欧美一级在线亚洲天堂| 亚洲成人在线免费| 国产精品高清在线观看| 久久天天狠狠| 亚洲永久字幕| 亚洲激情在线激情| 久久美女艺术照精彩视频福利播放| 亚洲国内精品| 国产欧美在线播放| 欧美激情精品久久久久久免费印度| 亚洲免费影院| 日韩亚洲欧美一区二区三区| 裸体素人女欧美日韩| 亚洲综合首页| 亚洲卡通欧美制服中文| 狠狠色狠狠色综合日日五| 欧美日韩一区在线| 蜜桃精品久久久久久久免费影院| 亚洲专区国产精品| 日韩一级免费| 亚洲缚视频在线观看| 久久午夜av| 欧美一站二站| 午夜精品福利视频| 日韩一级在线观看| 亚洲高清免费视频| 国产一区二区精品| 国产精品欧美一区二区三区奶水 | 国产精品家庭影院| 欧美承认网站| 久久在线91| 久久久久久夜精品精品免费| 性视频1819p久久| 亚洲自拍高清| 亚洲一区二区影院| 亚洲特色特黄| 一本在线高清不卡dvd| 亚洲精品美女免费| 亚洲激情视频网| 亚洲电影欧美电影有声小说| 模特精品在线| 亚洲二区免费| 亚洲激情视频网站| 亚洲人成网站777色婷婷| 亚洲国产视频一区| 亚洲欧洲一区二区在线播放| 亚洲青涩在线| 一区二区三区日韩精品| 中文精品99久久国产香蕉| 在线亚洲激情| 亚洲欧美色婷婷| 欧美影院在线播放| 久久天天躁狠狠躁夜夜av| 久久久噜噜噜久久中文字免| 玖玖国产精品视频| 欧美激情第五页| 欧美日韩国产探花| 国产精品免费电影| 国产亚洲精品bt天堂精选| 国内伊人久久久久久网站视频| 国产一区二区三区在线观看视频 | 亚洲第一中文字幕在线观看| 亚洲国产精品久久91精品| 亚洲激情网站| 亚洲色图制服丝袜| 欧美一区二视频| 久久一区二区三区四区五区| 欧美黄色一区| 国产精品一区二区三区久久久 | 欧美精品福利视频| 国产精品黄视频| 国产资源精品在线观看| 亚洲欧洲日产国码二区| 亚洲少妇最新在线视频| 欧美一区高清| 亚洲国产精品福利| 亚洲视频在线观看免费| 久久精品国产v日韩v亚洲| 欧美国产视频在线| 国产精品综合视频| 亚洲精品乱码久久久久久黑人| 亚洲综合丁香| 欧美成人一区二区三区| 亚洲视频免费在线| 免费不卡在线观看av| 国产精品每日更新| 亚洲欧洲日本国产| 久久国产精品网站| 亚洲日本中文字幕| 久久九九全国免费精品观看| 欧美日韩精品在线视频| 禁久久精品乱码| 亚洲免费在线精品一区| 欧美成人精品在线| 性亚洲最疯狂xxxx高清| 欧美涩涩视频| 亚洲精品韩国| 欧美电影在线播放| 欧美在线一二三四区|