Avatar billede morten_pedersen Nybegynder
24. oktober 2007 - 11:01 Der er 3 kommentarer

Tokenizer / istringstream

Hej eksperter

Jeg skal lave et program der kan tage en ip-adresse fra en variabel, og dele den op i fire nye variabler, så jeg har hver segment af adressen i hver sin variabel.. Nogen der har et godt eksempel?

Mvh.
Morten
Avatar billede arne_v Ekspert
24. oktober 2007 - 14:00 #1
Som i:

#include <iostream>
#include <cstring>

using namespace std;

int main()
{
    char ip[] = "111.222.333.444";
    char *p;
    p  = strtok(ip, ".");
    cout << p << endl;
    while((p = strtok(NULL, ".")) != NULL)
    {
        cout << p << endl;
    }
    return 0;
}

?
Avatar billede bertelbrander Novice
24. oktober 2007 - 23:09 #2
#include <sstream>
#include <string>
#include <iostream>
#include <vector>
#include <iterator>
using namespace std;

int main()
{
  const char* S = "111.222.333.444";
  stringstream SS(S);
  char Dummy;
  vector<unsigned int > Address;
  unsigned int Temp;
  while(SS >> Temp)
  {
      Address.push_back(Temp);
      SS >> Dummy;
  }

  copy(Address.begin(), Address.end(), ostream_iterator<unsigned int>(cout, " "));
}
Avatar billede arne_v Ekspert
27. januar 2008 - 05:23 #3
morten ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester