Rumah >pembangunan bahagian belakang >C++ >Bagaimana Menghuraikan Rentetan Dibatasi Koma ke dalam Tatasusunan Integer Menggunakan std::stringstream?

Bagaimana Menghuraikan Rentetan Dibatasi Koma ke dalam Tatasusunan Integer Menggunakan std::stringstream?

DDD
DDDasal
2024-12-19 17:10:13992semak imbas

How to Parse a Comma-Delimited String into an Integer Array Using std::stringstream?

Menghuraikan Rentetan Dibatasi Koma Menggunakan std::stringstream

Untuk menghuraikan rentetan yang dipisahkan koma ke dalam tatasusunan integer, anda boleh memanfaatkan kuasa std::stringstream. Berikut ialah panduan langkah demi langkah tentang cara untuk mencapai matlamat ini:

  1. Segerakkan Objek Stringstream:

    std::stringstream ss(str);

    Ini mencipta aliran rentetan objek ss yang dibaca daripada rentetan yang dipisahkan koma str.

  2. Lelaran Melalui Strim:

    for (int i; ss >> i;) {
        // ...
    }

    Gunakan gelung for untuk mengeluarkan nombor daripada aliran rentetan. Setiap lelaran cuba membaca integer i daripada ss. Jika berjaya, aksara berikut dalam strim mestilah koma.

  3. Semak Koma:

    if (ss.peek() == ',')
        ss.ignore();

    Selepas mengekstrak setiap nombor i , semak sama ada aksara seterusnya dalam strim ialah koma. Jika ya, buangkannya menggunakan ignore().

  4. Simpan Nombor dalam Tatasusunan:

    vect.push_back(i);

    Tambah setiap nombor yang diekstrak ke vektor atau tatasusunan, seperti vect.

  5. Lelar dan Paparkan Keputusan:

    for (std::size_t i = 0; i < vect.size(); i++)
        std::cout << vect[i] << std::endl;

    Akhir sekali, lelaran melalui vektor atau tatasusunan untuk memaparkan atau menggunakan nombor yang dihuraikan mengikut keperluan.

Atas ialah kandungan terperinci Bagaimana Menghuraikan Rentetan Dibatasi Koma ke dalam Tatasusunan Integer Menggunakan std::stringstream?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn