Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Menggabungkan Rentetan dan Integer dengan Cekap dalam C?
Menggabungkan rentetan dan integer dalam C ialah tugas biasa, tetapi mungkin sukar untuk mencari yang paling cekap dan cara ringkas untuk melakukannya. Pelbagai kaedah boleh digunakan untuk mencapai matlamat ini, dan pilihan bergantung pada faktor seperti prestasi, keselamatan dan keserasian platform.
1. Menggunakan lexical_cast Boost:
#include <boost/lexical_cast.hpp> std::string name = "John"; int age = 21; std::string result = name + boost::lexical_cast<std::string>(age);
2. Menggunakan std::to_string C 11:
#include <iostream> std::string name = "John"; int age = 21; std::string result = name + std::to_string(age);
3. Menggunakan FastFormat.Format:
#include <FastFormat.h> std::string name = "John"; int age = 21; std::string result; fastformat::fmt(result, "{0}{1}", name, age);
4. Menggunakan FastFormat.Write:
#include <FastFormat.h> std::string name = "John"; int age = 21; std::string result; fastformat::write(result, name, age);
5. Menggunakan Pustaka {fmt}:
#include <fmt/format.h> std::string name = "John"; int age = 21; std::string result = fmt::format("{}{}", name, age);
6. Menggunakan IOSstreams:
#include <iostream> #include <sstream> std::string name = "John"; int age = 21; std::stringstream sstm; sstm << name << age; std::string result = sstm.str();
7. Menggunakan 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. Menggunakan 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. Menggunakan integer_to_string STLSoft:
#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. Menggunakan winstl::int_to_string() STLSoft:
#include <wintlsoft/int_to_string.h> std::string name = "John"; int age = 21; std::string result = name + winstl::int_to_string(age);
11. Menggunakan Poco's NumberFormatter:
#include <Poco/NumberFormatter.h> std::string name = "John"; int age = 21; std::string result = name + Poco::NumberFormatter().format(age);
Prestasi, keselamatan dan ciri keserasian setiap kaedah diperincikan untuk membantu anda memilih pendekatan terbaik untuk keperluan khusus anda.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggabungkan Rentetan dan Integer dengan Cekap dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!