Új hozzászólás Aktív témák

  • sigidi

    tag

    Sziasztok!

    Olvasom régóta a fórumot, de most ez az IP címes C/C++ flame kihozta belőlem a "kommentelhetnéket". :))
    Csak úgy kérdem: Hogy lehetne még javítani rajta, hogy későbbi IP cím operációkat lehessen végezni rajta?
    replace helyett valami stringstream "átalakítgatás" nem létezik?

    #include <iostream>
    #include <string>
    #include <sstream>
    #include <algorithm>
    #include <iomanip>

    using namespace std;

    int main()
    {
    string ipv6 = "2001:0e00:41a0:006b:00de:03c0:0e00:60bc";
    replace(ipv6.begin(),ipv6.end(),':',' ');
    istringstream iss(ipv6);
    int tmp = 0;
    while(!iss.eof())
    {
    iss >> hex >> tmp;
    //hogy olyan legyen a kimenet, amit kértek feladatban
    if(iss.peek() == EOF && tmp < 4096)
    cout <<'0'<< hex << tmp;
    else if(iss.peek() == EOF && tmp > 4096)
    cout << hex << tmp;
    else if(tmp < 4096)
    cout << '0'<< hex << tmp << ':';
    else
    cout << hex << tmp << ':';
    }
    return 0;
    }

Új hozzászólás Aktív témák