Computer >> Máy Tính >  >> Lập trình >> C ++

Cách thanh lịch nhất để lặp lại các từ của một chuỗi bằng C ++

Không có một cách hay ho nào để lặp lại các từ của một chuỗi C / C ++. Cách dễ đọc nhất có thể được gọi là trang nhã nhất đối với một số người trong khi cách hiệu quả nhất đối với những người khác. Tôi đã liệt kê 2 phương pháp mà bạn có thể sử dụng để đạt được điều này. Cách đầu tiên là sử dụng một chuỗi ký tự để đọc các từ được phân tách bằng dấu cách. Điều này có một chút hạn chế nhưng thực hiện nhiệm vụ khá tốt nếu bạn cung cấp các kiểm tra thích hợp. Ví dụ:>

Mã mẫu

#include <iostream>
#include <vector>
#include <string>
#include <sstream>
using namespace std;

int main() {
   string str("Hello from the dark side");
   string tmp; // A string to store the word on each iteration.
   stringstream str_strm(str);
   vector<string> words; // Create vector to hold our words

   while (str_strm >> tmp) {
      // Provide proper checks here for tmp like if empty
      // Also strip down symbols like !, ., ?, etc.
      // Finally push it.
      words.push_back(tmp);
   }
   for(int i = 0; i<words.size(); i++)
      cout << words[i] << endl;
}

Đầu ra

Hello
from
the
dark
side