主要**如下:
//獲取字串的長度函式(每個漢字2個位元組長度)
int getstringlength(string str)
return ret;
}//double轉化為字串函式
string doubletostring(double d)
else
std::dequeintdeq, decdeq;
int h = (int)high;
if (isnegative)
if (h < 10)
else }
if (low > 0) }
else
std::string retval;
retval.resize(intdeq.size() + decdeq.size() + 2);
int i = 0;
for (const auto& e : intdeq)
retval[i++] = '.';
for (const auto& e : decdeq)
if (isnegative)
return retval;
}//字串轉換為double函式
double stringtodouble(string str)
if (str[i] >= '0'&&str[i] <= '9')
else
}i++;
} double retval = 0.0;
i = 0;
for (const auto& e : intdeq)
i = 1;
for (const auto& e : decdeq)
return retval;
}
測試**如下:
int nlen = getstringlength("a345闔家歡樂ff;$%^");
auto ff1 = stringtodouble(".12");
auto ff2 = stringtodouble("12.345");
auto ff3 = stringtodouble("123.45g.67y");
auto ss1 = doubletostring(12.345);
auto ss2 = doubletostring(-16.10001);
cout << nlen << '\t' << ff1 << '\t' << ff2 << '\t'
<< ff3 << '\t' << ss1 << '\t' << ss2 << endl;
執行結果如下:
18 0.12 12.345 123.457 12.345000000000000
資料型別轉換與自定義函式
1.int float str bool 使用以上四種函式可以對不同變數型別進行轉換。例如 int 123 float 3.3 str 111 bool 0 上面例子中,前兩個語句將字串分別轉換為了整數型和浮點型,第三個語句將整數型轉換成字串,最後乙個將資料轉換成布林型。注意,對於bool轉換,只有...
C 自定義資料型別
c 除了提供多種基本的資料型別 如 int float double char等 供使用者使用外,還允許使用者根據需要自己宣告一些型別,例如陣列 結構體 structure 型別 共用體 union 型別 列舉 enumeration 型別 類 class 型別等,這些統稱為 使用者自定義型別 us...
C 自定義資料型別
c 中有以下幾種自定義資料型別方式 typedef union enum typedef只是用於重新命名一種已有的資料型別。typedef char c c c即char c typedef char field 50 field s即char 50 注意第二種用法,陣列的維數 50 是寫在最後的。...