//函數名:myatof
//功能:把字符串轉化成double浮點型
//名字來源:my array to floating point numbers
//函數說明:接收一個字符串判斷第一個字符的符號,沒有符號默認為正值,然後對剩余字符串進行轉換,//遇到\0結束,最後返回一個double
double myatof(const char* sptr)
{
double temp=10;
bool ispnum=true;
double ans=0;
if(*sptr=='-')//判斷是否是負數
{
ispnum=false;
sptr++;
}
else if(*sptr=='+')//判斷是否為正數
{
sptr++;
}
while(*sptr!='\0')//尋找小數點之前的數
{
if(*sptr=='.'){ sptr++;break;}
ans=ans*10+(*sptr-'0');
sptr++;
}
while(*sptr!='\0')//尋找小數點之後的數
{
ans=ans+(*sptr-'0')/temp;
temp*=10;
sptr++;
}
if(ispnum) return ans;
else return ans*(-1);
}
//函數名:myatoi
//功能:把字符串轉化成int整型
//名字來源:my array to integer
//函數說明:接收一個字符串判斷第一個字符的符號,沒有符號默認為正值,然後對剩余字符串進行轉換,//遇到\0結束,最後返回一個int
int myatoi(const char* sptr)
{
bool ispnum=true;
int ans=0;
if(*sptr=='-')//判斷是否是負數
{
ispnum=false;
sptr++;
}
else if(*sptr=='+')//判斷是否為正數
{
sptr++;
}
while(*sptr!='\0')//類型轉化
{
ans=ans*10+(*sptr-'0');
sptr++;
}
if(ispnum) return ans;
else return ans*(-1);
}