Rumah > Artikel > pembangunan bahagian belakang > Bagaimanakah anda menukar vektor integer kepada rentetan yang dibatasi dalam C ?
Sertai Vektor Integer ke dalam Rentetan Terhad
Dalam C , menukarkan vektor integer kepada rentetan yang dihadkan oleh aksara tertentu boleh dicapai melalui pelbagai pendekatan.
Menggunakan Stringstream
Satu kaedah melibatkan penggunaan std::stringstream, seperti yang ditunjukkan dalam kod berikut:
<code class="cpp">#include <sstream> //... std::stringstream ss; for (size_t i = 0; i < v.size(); ++i) { if (i != 0) ss << ","; ss << v[i]; } std::string s = ss.str();
Di sini, objek aliran rentetan ss digunakan untuk menambahkan integer secara berurutan pada rentetan sambil memasukkan koma sebagai pembatas.
Menggunakan std::for_each
Sebagai alternatif , anda boleh menggunakan algoritma std::for_each bersama-sama dengan fungsi lambda tersuai:
<code class="cpp">#include <algorithm> #include <sstream> //... std::stringstream ss; std::for_each(v.begin(), v.end(), [&ss](int i) { if (ss.str().size() != 0) ss << ","; ss << i; }); std::string s = ss.str();</code>
Dalam pendekatan ini, fungsi lambda memasukkan koma apabila melelakan elemen berikutnya, memastikan peletakan pembatas yang betul.
Atas ialah kandungan terperinci Bagaimanakah anda menukar vektor integer kepada rentetan yang dibatasi dalam C ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!