💻 Lecții C++ & Python🏠 Home
strtok în C++: Separarea Cuvintelor dintr-un Șir | Clasa 11
◀strlen, strcpy, strcat, strcmp în C++Tipul struct în C++: Structuri și Sortare▶
Se pregătesc resursele...

📘 Lecție de C++ pentru clasa a 11-a și BAC, cu explicații video de la profesor. Mai jos ai rezumatul. În lecția completă găsești aplicații rezolvate cu simulator, în care vezi pas cu pas cum se schimbă variabilele, compilator C++ în browser, exerciții propuse cu indicii și rezolvare, și pe Alex, asistentul care îți dă indicii, îți explică algoritmul și îți corectează codul.

🎯 Apare la BAC? Da. Separarea cuvintelor dintr-o propoziție e o cerință frecventă la problemele cu șiruri de caractere de la BAC.

Separarea cuvintelor cu strtok

char s[] = "Ana are mere";
char *p = strtok(s, " ");
while (p) {
    cout << p << endl;
    p = strtok(NULL, " ");
}

❓ Întrebări frecvente

1. Cum separ cuvintele dintr-o propoziție în C++? Cu strtok: primul apel primește șirul și delimitatorii, apoi apelezi strtok(NULL, delimitatori) până returnează NULL.

2. De ce la al doilea apel se pune NULL? Pentru că strtok reține intern unde a rămas și continuă de acolo.

3. Pot folosi mai mulți delimitatori? Da, îi scrii pe toți în același șir, de exemplu strtok(s, " ,.").

4. Ce se întâmplă cu șirul original? Se modifică: delimitatorii sunt înlocuiți cu \0. Dacă ai nevoie de el, fă o copie înainte.

5. Cum număr cuvintele dintr-un șir? Parcurgi cuvintele cu strtok și crești un contor la fiecare cuvânt găsit.

Ce conține lecția completă?

  • ✅ Explicații video cu profesorul
  • ✅ Aplicații rezolvate cu simulator: vezi cum se schimbă variabilele la fiecare pas
  • ✅ Compilator C++ în browser: rulezi codul direct
  • ✅ Delimitatori multipli
  • ✅ Numărarea cuvintelor, extragerea numerelor
  • ✅ Probleme tip Bacalaureat rezolvate
  • ✅ Exerciții propuse cu indicii și rezolvare
  • ✅ Asistentul Alex: indicii, explicarea algoritmului, corectarea codului

Vezi și — alte lecții din același capitol