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

C小加

厚德 博學(xué) 求真 至善 The bright moon and breeze
posts - 145, comments - 195, trackbacks - 0, articles - 0
  C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
//函數(shù)名:myatof
//功能:把字符串轉(zhuǎn)化成double浮點(diǎn)型
//名字來源:my array to floating point numbers  
//函數(shù)說明:接收一個字符串判斷第一個字符的符號,沒有符號默認(rèn)為正值,然后對剩余字符串進(jìn)行轉(zhuǎn)換,//遇到\0結(jié)束,最后返回一個double

double myatof(const char* sptr)
{
    double temp=10;
    bool ispnum=true;
    double ans=0;
    if(*sptr=='-')//判斷是否是負(fù)數(shù)
    {
        ispnum=false;
        sptr++;
    }
    else if(*sptr=='+')//判斷是否為正數(shù)
    {
        sptr++;
    }

    while(*sptr!='\0')//尋找小數(shù)點(diǎn)之前的數(shù)
    {
        if(*sptr=='.'){ sptr++;break;}
        ans=ans*10+(*sptr-'0');
        sptr++;
    }
    while(*sptr!='\0')//尋找小數(shù)點(diǎn)之后的數(shù)
    {
        ans=ans+(*sptr-'0')/temp;
        temp*=10;
        sptr++;
    }
    if(ispnum) return ans;
    else return ans*(-1);
}

//函數(shù)名:myatoi
//功能:把字符串轉(zhuǎn)化成int整型
//名字來源:my array to integer  
//函數(shù)說明:接收一個字符串判斷第一個字符的符號,沒有符號默認(rèn)為正值,然后對剩余字符串進(jìn)行轉(zhuǎn)換,//遇到\0結(jié)束,最后返回一個int

int myatoi(const char* sptr)
{

    bool ispnum=true;
    int ans=0;
    if(*sptr=='-')//判斷是否是負(fù)數(shù)
    {
        ispnum=false;
        sptr++;
    }
    else if(*sptr=='+')//判斷是否為正數(shù)
    {
        sptr++;
    }

    while(*sptr!='\0')//類型轉(zhuǎn)化
    {
        ans=ans*10+(*sptr-'0');
        sptr++;
    }

    if(ispnum) return ans;
    else return ans*(-1);
}

Feedback

# re: 自己實(shí)現(xiàn)的atof()和atoi()代碼[未登錄]  回復(fù)  更多評論   

2012-02-24 19:53 by ithaca
沒有處理前置的空白,這個功能,標(biāo)準(zhǔn)的atoi都是要有的。

# re: 自己實(shí)現(xiàn)的atof()和atoi()代碼  回復(fù)  更多評論   

2012-02-25 21:24 by ko
正數(shù)不一定非要用 + 占位吧

# re: 自己實(shí)現(xiàn)的atof()和atoi()代碼  回復(fù)  更多評論   

2012-02-27 09:10 by C小加
遇到+了怎么辦@ko

# re: 自己實(shí)現(xiàn)的atof()和atoi()代碼  回復(fù)  更多評論   

2013-11-09 11:25 by danielyin
atoi沒有考慮溢出的問題。

# re: 自己實(shí)現(xiàn)的atof()和atoi()代碼  回復(fù)  更多評論   

2014-09-05 22:27 by memristor
定義函數(shù) double atof(const char *nptr);
函數(shù)說明 atof()會掃描參數(shù)nptr字符串,跳過前面的空格字符,直到遇上數(shù)
字或正負(fù)符號才開始做轉(zhuǎn)換,而再遇到非數(shù)字或字符串結(jié)束時
('\0')才結(jié)束轉(zhuǎn)換,并將結(jié)果返回。參數(shù)nptr字符串可包含正負(fù)
號、小數(shù)點(diǎn)或E(e)來表示指數(shù)部分,如123.456或123e-2。
返回值 返回轉(zhuǎn)換后的浮點(diǎn)型數(shù)。
#include <stdio.h>
#include <ctype.h>
#include <math.h>
#include <stdlib.h>
#include <assert.h>


double myatof(const char*s)
{
assert(s!=NULL);
double val,val2,power;
int sign,sign2,i;
//去掉字符串中的空格
for(i=0;isspace(s[i]);++i)
;
//判斷正負(fù)數(shù) ,并將i指向下一個位置
sign = (s[i] == '-') ? -1:1;
if(s[i] == '+' || s[i] == '-')
i++;
//取浮點(diǎn)數(shù)的整數(shù)部分
for(val=0.0;isdigit(s[i]) && s[i] !=0;++i)
val = 10*val+s[i]-'0';
//取小數(shù)點(diǎn)
if(s[i] == '.')
i++; //后一個位置
//取小數(shù)點(diǎn)后面數(shù)
for(power=1.0;isdigit(s[i]) && s[i] !=0;++i)
{
val = 10*val+s[i]-'0';
power*=10; //float 放大的倍數(shù)
}
val=sign*val/power;

//如果有e的話處理e后面的數(shù)字
if(s[i]=='e' || s[i]== 'E'){
i++;
sign2 = (s[i] == '-')?-1:1;
if(s[i] == '+' || s[i] == '-')
i++;
for(val2=0.0;isdigit(s[i]) && s[i] !=0;++i){
val2 = 10*val2+s[i]-'0';
}
if(sign2 == -1)
return val/pow(10,val2);
else
return val*pow(10,val2);
}
return val;
}
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            99re8这里有精品热视频免费 | 亚洲一区国产| 欧美一区二区三区啪啪| aa日韩免费精品视频一| 欧美日韩视频在线| 亚洲男人天堂2024| 性欧美超级视频| 极品av少妇一区二区| 欧美激情四色| 欧美日本韩国一区二区三区| 亚洲免费在线视频| 久久久99精品免费观看不卡| 亚洲日本激情| 一二三区精品| 狠狠色综合日日| 亚洲国产精品久久久久婷婷老年| 农村妇女精品| 欧美日韩国产三级| 欧美影院在线播放| 另类尿喷潮videofree| 99精品国产热久久91蜜凸| 亚洲网站啪啪| 亚洲国产欧美一区| 中国av一区| 亚洲国产欧美国产综合一区| 亚洲另类视频| 国产一区二区三区在线观看精品 | 黄色av成人| 亚洲国产日韩欧美| 国产欧美日韩高清| 亚洲国产一区二区三区高清| 国产日韩欧美高清| 亚洲精品乱码久久久久久久久| 午夜影视日本亚洲欧洲精品| 久久国产日本精品| 红桃视频国产一区| 一本久久综合亚洲鲁鲁| 一区精品在线播放| 亚洲天天影视| 亚洲乱码一区二区| 另类亚洲自拍| 久久成人免费日本黄色| 欧美人在线观看| 美女主播视频一区| 国产伊人精品| 一区二区三区高清| 日韩午夜免费视频| 久久深夜福利| 久久精品视频导航| 国产精品视频免费观看| 99国产精品久久久| 一本久道综合久久精品| 久久久久久久一区| 久久久久免费视频| 国产一区二区三区观看| 亚洲欧美激情在线视频| 亚洲综合视频一区| 欧美日韩中文在线观看| 亚洲欧洲综合另类| 亚洲精品裸体| 欧美激情国产日韩| 91久久久亚洲精品| 夜久久久久久| 欧美日韩大陆在线| 日韩午夜电影av| 一区二区精品在线观看| 欧美女激情福利| 亚洲精品视频在线观看免费| 日韩午夜在线播放| 欧美视频在线观看免费| 一区二区三区欧美激情| 性久久久久久久| 国产精品一区=区| 欧美在线播放一区| 美脚丝袜一区二区三区在线观看 | 欧美成人高清| 伊人久久久大香线蕉综合直播| 欧美成人免费va影院高清| 影音先锋久久| 免费亚洲一区二区| 亚洲精品亚洲人成人网| 亚洲一区日韩在线| 国产精品每日更新在线播放网址| 免费人成精品欧美精品| 在线观看欧美日韩国产| 欧美国产日本韩| 日韩视频永久免费| 久久gogo国模裸体人体| 国产在线观看精品一区二区三区| 亚洲欧洲日本专区| 午夜精品久久| 国产亚洲va综合人人澡精品| 久久夜色精品国产欧美乱极品| 亚洲先锋成人| 国产精品丝袜91| 久久久久久高潮国产精品视| 最新日韩中文字幕| 欧美一区二区观看视频| 亚洲黄色免费| 西西人体一区二区| 玖玖玖国产精品| 亚洲精品一区二区三区99| 亚洲尤物视频在线| 国产综合视频在线观看| 欧美激情偷拍| 久久国产色av| 一区二区av在线| 欧美成人精品一区| 午夜久久福利| 亚洲久久一区二区| 激情婷婷久久| 国产精品欧美一区二区三区奶水 | 久久精品国产视频| 最新日韩中文字幕| 国产丝袜一区二区| 欧美日韩国产精品成人| 久久亚洲精品中文字幕冲田杏梨| 欧美一区国产一区| 亚洲国产综合在线看不卡| 国产精品久久波多野结衣| 欧美成人69| 久久九九国产精品怡红院| 亚洲香蕉视频| 亚洲精品视频啊美女在线直播| 亚洲国产人成综合网站| 国产伦精品一区二区三区| 欧美午夜剧场| 免费观看久久久4p| 久久久久欧美精品| 欧美一级淫片播放口| 在线视频精品| 日韩视频在线观看国产| 亚洲国产小视频在线观看| 免费久久久一本精品久久区| 久久国产精品久久久久久电车| 国内精品视频666| 国产老女人精品毛片久久| 欧美日韩一区高清| 国产精品s色| 欧美午夜宅男影院| 国产精品青草久久| 国产精品毛片| 欧美日韩国产免费观看| 欧美日韩1区| 欧美日韩精品一区二区三区四区 | 一区二区免费在线播放| 亚洲人成人一区二区在线观看| 一区二区三区回区在观看免费视频| 欧美精品一区在线观看| 免费久久99精品国产| 蜜桃久久精品一区二区| 欧美黄色片免费观看| 欧美精品www| 欧美人与禽性xxxxx杂性| 欧美女同视频| 国产精品国产三级欧美二区| 欧美日韩免费一区二区三区视频 | 亚洲欧美激情诱惑| 亚洲女人av| 久久精品首页| 欧美aa国产视频| 欧美日韩aaaaa| 国产乱码精品一区二区三区忘忧草| 久久久亚洲国产美女国产盗摄| 亚洲黄色有码视频| 99精品99久久久久久宅男| 亚洲天堂av在线免费| 一区二区三区欧美日韩| 亚洲国产综合在线| 亚洲午夜精品网| 久久久精品国产一区二区三区| 亚洲三级色网| 亚洲午夜在线| 久久人人爽人人爽| 亚洲电影观看| 亚洲一级影院| 老牛国产精品一区的观看方式| 性久久久久久久久久久久| 老司机aⅴ在线精品导航| 欧美日本国产| 黑人操亚洲美女惩罚| 99精品视频网| 久久精品人人| 日韩视频一区二区三区| 久久激情五月婷婷| 国产精品高清在线| 亚洲国产二区| 久久精品亚洲一区| av成人激情| 久久一区二区三区国产精品| 国产精品盗摄久久久| 亚洲国产清纯| 久久精品国产第一区二区三区最新章节| 国产欧美在线视频| 亚洲国产高清高潮精品美女| 午夜精品免费在线| 模特精品在线| 小嫩嫩精品导航| 国产精品久久久久久久久动漫| 欧美午夜精品一区|