fork download
  1. #include <boost/algorithm/string.hpp>
  2. #include <boost/lexical_cast.hpp>
  3. #include <iostream>
  4. #include <vector>
  5. #include <string>
  6.  
  7. std::string m_sten;
  8. std::string m_feal;
  9. std::string m_felt;
  10. std::string m_inte;
  11. std::string m_sag;
  12. std::string m_ende;
  13. std::string m_asko;
  14. std::string m_vit;
  15. using boost::lexical_cast;
  16. void test(bool mon)
  17. {
  18. std::string m_caracs = "f21.0i51.24v58.65c47.3s5.54d57.68e54.23h24.42";
  19. if (mon == 0)
  20. {
  21. std::vector<std::string> charmps;
  22. boost::split(charmps, m_caracs, boost::is_any_of("fivcsdeh"));
  23. m_sten = boost::lexical_cast<float>(charmps[1]);
  24. m_feal = boost::lexical_cast<float>(charmps[2]);
  25. m_felt = boost::lexical_cast<float>(charmps[3]);
  26. m_inte = boost::lexical_cast<float>(charmps[4]);
  27. m_sag = boost::lexical_cast<float>(charmps[5]);
  28. m_ende = boost::lexical_cast<float>(charmps[6]);
  29. m_asko = boost::lexical_cast<float>(charmps[7]);
  30. m_vit = boost::lexical_cast<float>(charmps[8]);
  31. std::cout << m_caracs << std::endl;
  32. }
  33. else
  34. {
  35. std::cout << m_caracs << std::endl;
  36. m_caracs = "f" + boost::lexical_cast<std::string>(m_sten) +
  37. "i" + boost::lexical_cast<std::string>(m_feal) +
  38. "v" + boost::lexical_cast<std::string>(m_felt) +
  39. "c" + boost::lexical_cast<std::string>(m_inte) +
  40. "s" + boost::lexical_cast<std::string>(m_sag) +
  41. "d" + boost::lexical_cast<std::string>(m_ende) +
  42. "e" + boost::lexical_cast<std::string>(m_asko) +
  43. "h" + boost::lexical_cast<std::string>(m_vit);
  44. std::cout << m_caracs << std::endl;
  45. }
  46. }
  47.  
  48. int main()
  49. {
  50. //test(1);
  51. //test(0);
  52. float a = 1234567.2;
  53. std::string s1 = lexical_cast<std::string>(a);
  54. std::cout << s1.c_str() <<std::endl;
  55. }
Success #stdin #stdout 0.01s 5448KB
stdin
Standard input is empty
stdout
1234567.25