c++實現atof()函式,將字串轉換成浮點數
阿新 • • 發佈:2019-01-28
直接貼程式碼,試著寫這些,可以增加對c++的理解吧~
期待更好的演算法
#include<iostream> #include<stdlib.h> #include<string> using namespace std; double change(char *input) { int i=0,count1=1; double input_int1=0,input_xs1=0,input_1=0; while(*(input+i)!='\0') { while(*(input+i)>='0'&&*(input+i)<='9') { input_int1=input_int1*10 + *(input+i) - '0'; i++; } i++; while(*(input+i)>='0'&&*(input+i)<='9') { input_xs1=input_xs1*10 + *(input+i) - '0'; count1*=10; i++; } } input_1=input_int1+input_xs1/count1; return input_1; } int main() { char *input; double sum=0; input=(char*)malloc(10); cout<<"輸入字串數:"; gets(input); sum=change(input); cout<<"轉化成浮點數:"<<sum<<endl; system("pause"); return 0; }