C++ Problem so Strtok

Programovacie jazyky, rady, poradňa...
Kamik
Light Expert
Light Expert
Príspevky: 65
Registrovaný: 28 jan 2008, 16:30

C++ Problem so Strtok

Príspevok od používateľa Kamik »

Chcem vytvorit program ktory rozdeli vetu na slova pomocou strtok ked veta zadam do premenej char vopred vsetko funguje
ale akonahle do premenej char nacitam nejaku vetu tak mi vypise prve slovo vety 2x a nic viac vedel by mi niekto pomoct ??

Funkcne s vopred zadanou vetou

Kód: Vybrať všetko

#include <stdio.h>
#include <string.h>
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
  char str[100] ="Veta na rozdelenie";
  char * pch;
  cout<<"Veta ktoru ste zadali:\n"<<str;
  pch = strtok (str," ,.-");
  while (pch != NULL)
  {
    cout<<"\n"<<pch;
    pch = strtok (NULL, " ,.-");
  }
  getch ();
  return 0;
}

Nefunkcne veta nacitana z klavesnice

Kód: Vybrať všetko

#include <stdio.h>
#include <string.h>
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
  char str[100];
  char * pch;
  cout<<"Zadaj vetu:\n";
  cin>>str;
  cout<<"Veta ktoru ste zadali:\n"<<str;
  pch = strtok (str," ,.-");
  while (pch != NULL)
  {
    cout<<"\n"<<pch;
    pch = strtok (NULL, " ,.-");
  }
  getch ();
  return 0;
}
johny3212
Star
Star
Používateľov profilový obrázok
Príspevky: 532
Registrovaný: 17 feb 2008, 19:56
Bydlisko: Terchova
Kontaktovať používateľa:

Re: C++ Problem so Strtok

Príspevok od používateľa johny3212 »

objekt cin berie iba jedno slovo, pouzi getline, dalej pouzi premennu typu string.
Kamik
Light Expert
Light Expert
Príspevky: 65
Registrovaný: 28 jan 2008, 16:30

Re: C++ Problem so Strtok

Príspevok od používateľa Kamik »

johny3212 napísal:objekt cin berie iba jedno slovo, pouzi getline, dalej pouzi premennu typu string.
Dakujem uz to slape ako ma.
Napísať odpoveď