Вы можете использовать функцию strtok_r, но внимательно прочитайте страницы руководства, чтобы понять, как она поддерживает состояние.
Ответ 3
Посмотрите этот учебник, который, безусловно, лучший учебник по токенизации, который я нашел до сих пор. Он охватывает лучшие практики в реализации различных методов, которые включают использование getline() и find_first_of() в С++ std, а strtok() в C.