C ++ wcstok () - C ++ standartinė biblioteka

Funkcija wcstok (), esanti C ++, grąžina kitą prieigos raktą nulinės pabaigos plačioje eilutėje.

Funkcija wcstok () yra apibrėžta antraštės faile.

wcstok () prototipas

 wchar_t * wcstok (wchar_t * str, const wchar_t * delim, wchar_t ** ptr);

Funkcijai wcstok () priklauso trys argumentai: str, delim ir ptr. Ši funkcija atpažįsta žetoną plačioje eilutėje, kurią nurodo str. Žymeklis atriboja taškus į skyriklio simbolius.

Šią funkciją galima iškviesti kelis kartus, norint gauti žetonus iš tos pačios plačios eilutės. Yra du atvejai:

  1. Jei str nėra NULL:
    Skambinimas į wcstok () laikomas pirmuoju tos plačios eilutės iškvietimu. Funkcija ieško pirmo plataus simbolio, kurio nėra delim. Jei tokio plataus simbolio nerandama, plačioje eilutėje nėra žetono. Taigi grąžinamas nulinis rodyklė.
    Jei randamas toks platus simbolis, funkcija ieško plataus simbolio, kuris yra atribojime. Jei separatorius nerastas, str turi tik vieną prieigos raktą. Jei randamas skyriklis, jis pakeičiamas L ' 0' ir žymeklis į šį simbolį saugomas * ptr. Galiausiai funkcija grąžina žymeklį į žetono pradžią.
  2. Jei str yra NULL:
    skambutis laikomas vėlesniais skambučiais į wcstok ir funkcija tęsiama ten, kur paliko ankstesniame iškvietime su tuo pačiu * ptr.

wcstok () parametrai

  • str: Nulinės baigtos plačios eilutės žymeklis žymėti.
  • atriboti: Neleistos plačios eilutės, kurioje yra atskyrikliai, žymeklis.
  • ptr: žymeklis, nukreipiantis į platų simbolį, kurį wcstok naudoja savo vidinei būsenai išsaugoti.

wcstok () Grąžinimo vertė

  • Funkcija wcstok () grąžina žymeklį į kito žetono pradžią, jei yra
  • Jei daugiau žetonų nerandama, jis grąžina NULL.

Pavyzdys: Kaip veikia funkcija wcstok ()?

 #include #include #include using namespace std; int main() ( setlocale(LC_ALL, "en_US.utf8"); wchar_t str() = L"parrot,owl,sparrow,pigeon,crow"; wchar_t delim() = L"u002c";// unicode for comma wchar_t *ptr; wcout << L"The tokens are:" << endl; wchar_t *token = wcstok(str,delim,&ptr); while (token) ( wcout << token << endl; token = wcstok(NULL,delim,&ptr); ) return 0; )

Kai paleisite programą, išvestis bus:

 Žetonai yra: papūgos pelėdos žvirblio balandis varna

Įdomios straipsniai...