Einzelnnen Buchstaben von char* auslesen



  • Hallo zusammen,
    ich möchte den Buchstaben an der Position x aus einem String (char*) auslesen, doch ich finde nirgends wie.
    Kann jemand Helfen?
    mfg, jonnybx



  • char *lol = "muhahah";
    char c = lol[2];



  • Ok, zu wenig info xD
    ich möchte danach dieses Zeichen mit einem bestimmten Zeichen wie z.B. "\n" vergleichen, aber der Compiler meckert:

    cannot convert from 'const char [2]' to 'char'
    


  • Immer noch zu wenig Info. Zeig uns mal bitte den Code.



  • ok, hier ist der Code:

    void Message::showMessage(char *Text, enum messageType, int Time, game *Game)
    {
    	int length = strlen(Text);
    	//parse the message!
    	for (int i = 0; i < length; i++)
    	{
    		char now = Text[i]
    		char divider = "\n"
    		if(now == divider)
    		{
    			cout<< "Zeichen gefunden\n";
    		}
    		else
    		{
    			//do something else
    		}
    	}
    
    ...
    }
    

    mfg, Johannes



  • "\n" ist ein String, wird zu '\n' '\0'. Das Zeichen ist '\n'.

    void Message::showMessage(char *Text, enum messageType, int Time, game *Game) // Wenn du Text nicht verändern willst, erwarte const char*. Oder besser: const std::string&.
    // Das enum ist überflüssig, zudem ist messageType der Typ und kein Variablenname. Soll wohl heißen: messageType message_type.
    {
        int length = strlen(Text);
        //parse the message!
        for (int i = 0; i < length; i++)
        {
            char now = Text[i];
            char divider = '\n';
            if(now == divider)
            {
                cout<< "Zeichen gefunden\n";
            }
            else
            {
                //do something else
            }
        }
    
    ...
    }
    

    Aber immerhin ein Anfänger, der ordentlich schreiben kann, cpp-Tags nutzt und ordentlich einrückt. Gleich alles auf einmal. Großes Lob, auch wenn es irgendwie traurig ist, dafür ein Lob auszusprechen. :xmas1:



  • -.-
    Ich hau mal meinen Kopf gegen die Tischplatte!
    Das mir das nicht auffällt das ich ' brauch...
    bzgl. Anfänger: ich mach das schon seit 3 Jahren...
    Ich such mal mein Hirn xD
    Danke für eure Hilfe!



  • Die fehlenden Semikolons in Zeile 7 und 8 sind wahrscheinlich nur im Forum Tippfehler... Sonst brauchst du now nicht, stattdessen kannst du direkt Wort[i] nehmen.


Anmelden zum Antworten