C での文字列と整数の連結は一般的なタスクですが、最も効率的で効率的な方法を見つけるのは難しい場合があります。簡潔なやり方。これを実現するにはさまざまな方法が使用できますが、どの方法を選択するかは、パフォーマンス、安全性、プラットフォームの互換性などの要素によって異なります。
1. Boost の lexical_cast を使用する:
#include <boost/lexical_cast.hpp> std::string name = "John"; int age = 21; std::string result = name + boost::lexical_cast<std::string>(age);
2. C 11 の std::to_string:
#include <iostream> std::string name = "John"; int age = 21; std::string result = name + std::to_string(age);
を使用する 3. FastFormat.Format の使用:
#include <FastFormat.h> std::string name = "John"; int age = 21; std::string result; fastformat::fmt(result, "{0}{1}", name, age);
4. FastFormat.Writeの使用:
#include <FastFormat.h> std::string name = "John"; int age = 21; std::string result; fastformat::write(result, name, age);
5. {fmt} ライブラリの使用:
#include <fmt/format.h> std::string name = "John"; int age = 21; std::string result = fmt::format("{}{}", name, age);
6. IOStreamsの使用:
#include <iostream> #include <sstream> std::string name = "John"; int age = 21; std::stringstream sstm; sstm << name << age; std::string result = sstm.str();
7. itoa の使用:
#include <cstdio> std::string name = "John"; int age = 21; char numstr[21]; // enough to hold all numbers up to 64-bits std::string result = name + itoa(age, numstr, 10);
8. sprintf の使用:
#include <cstdio> std::string name = "John"; int age = 21; char numstr[21]; // enough to hold all numbers up to 64-bits sprintf(numstr, "%d", age); std::string result = name + numstr;
9. STLSoft の integer_to_string:
#include <stlsoft/integer_to_string.hpp> std::string name = "John"; int age = 21; char numstr[21]; // enough to hold all numbers up to 64-bits std::string result = name + stlsoft::integer_to_string(numstr, 21, age);
10 を使用します。 STLSoft の winstl::int_to_string():
#include <wintlsoft/int_to_string.h> std::string name = "John"; int age = 21; std::string result = name + winstl::int_to_string(age);
の使用 11. Poco の NumberFormatter の使用:
#include <Poco/NumberFormatter.h> std::string name = "John"; int age = 21; std::string result = name + Poco::NumberFormatter().format(age);
特定のニーズに最適なアプローチを選択できるように、各メソッドのパフォーマンス、安全性、互換性の特性が詳しく説明されています。
以上がC で文字列と整数を効率的に連結するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。