std::istringstream can split a line into whitespace-separated tokens.

Token Stream Count

token_stream_count.cpp
#include <iostream>
#include <sstream>
#include <string>

int main() {
    std::string line = ;

    std::istringstream input(line);
    std::string token;
    int count = 0;
    while (input >> token) {
        count += 1;
    }

    std::cout << "line=" << line << std::endl;
    std::cout << "count=" << count << std::endl;
    return 0;
}
#include <iostream>
#include <sstream>
#include <string>

int main() {
    std::string line = ;

    std::istringstream input(line);
    std::string token;
    int count = 0;
    while (input >> token) {
        count += 1;
    }

    std::cout << "line=" << line << std::endl;
    std::cout << "count=" << count << std::endl;
    return 0;
}
#include <iostream>
#include <sstream>
#include <string>

int main() {
    std::string line = ;

    std::istringstream input(line);
    std::string token;
    int count = 0;
    while (input >> token) {
        count += 1;
    }

    std::cout << "line=" << line << std::endl;
    std::cout << "count=" << count << std::endl;
    return 0;
}
token A token is one piece of text separated by whitespace or another delimiter.
istringstream An input string stream lets code read from a string with the same `>>` operator used for input streams.