C++ String zu Integer



  • Hi Leute,
    folgendes Problem: Ich habe einen String mit Zahlen, diese Zahlen sind durch Punkte getrennt (ähnlich wie eine IP Adresse). Wie kann ich die Zahlen des Strings in Integer umwandeln ohne mit den Punkten Schwierigkeiten zu bekommen.

    Folgendes habe ich bis jetzt überlegt:

    String s = "192.168.1.1"
    
    int var[4]={int,int,int,int};
    
    Resultat: var[4]={192,168,1,1};
    

    Es ist klar das ich die Zahlen aus dem String mit StrToInt umwandeln kann aber wie handhabe ich das Problem mit den Punkten gescheit ?? Bin sehr Dankbar für eure Hilfe !



  • Hallo,

    zu den int2string etc. Sachen gabs schon genügend Posts. Einfach mal die Suchfunktion nutzen. Was ist denn bitte StrToInt? Das Punktproblem würde ich einfach so lösen, dass du an den Punkten den String teilst, und dann jede Zahl separat umwandelst.



  • Hallo,
    das geht z.B. so:

    int main() 
    {
    	string str = "192.168.1.1" ;
    	stringstream s(str);
    	int arr[4];
    	for (int i = 0; i < 4; ++i)
    	{
    		char extractPoint;
    		s >> arr[i] >> extractPoint;
    		cout << arr[i] << endl;
    	}
    
    }
    

    Allerdings hätte ein einfacher Blick in unsere FAQ wohl ausgereicht um dein Problem zu lösen:
    http://www.c-plusplus.net/forum/viewtopic.php?t=39488



  • Vielen Dank Leute ,hat sehr geholfen !


Anmelden zum Antworten