Zeilen eines zweidimensionalen Arrays an string übergeben?



  • Hi Leute!

    Ich hab ein zweidimensionales Array und ich möchte über eine for-Schleife einer Stringvariable zeilenweise den Inhalt des Arrays zuweisen. Wie geht das?

    Ich hab natürlich schon einiges ausprobiert, aber das funktioniert so nicht ganz:

    for(int i = 0; i<len; i++)
    	{
    		for(int j = 0; j<3; j++)
    		{
    			command = programMemory[i];
    		}
    	}
    

    Wenn ich das so wie oben schreibe, dann hab ich in command ALLES stehen. Ich will aber nur die Zeile die durch i adressiert wird. Wenn ich die zweite Dimension dazunehme, dann überschreibt er mir immer das vorhergegangene Zeichen...

    Wie kann man das machen?



  • Zu wenig Informationen... 🙄



  • Wie genau willst du das denn haben?
    command enthält eine Zeile, oder alle durch irgendein Zeichen getrennt?
    Für letzteres wäre das eine Lösung.
    for (std::size_t i = 0; i < len; ++i)
    command += programMemory[i] + seperator;
    Oder willst du vielleicht ein Array von char-Arrays zu einem Array von Strings machen?



  • vip@r schrieb:

    for(int i = 0; i<len; i++)
    	{
    		for(int j = 0; j<3; j++)
    		{
    			command = programMemory[i];
    		}
    	}
    

    Wenn du das so machst, dann steht in command nur das drin, dass bei beim dritten Durchlauf(j=2) bei programMemory[len] ausgegeben wird, weil das ja immer wieder überschrieben wird.

    Um da drüber nachdenken zu können, müsst ich irgendeine Vorstellung haben, was "programMemory" ausspuckt.

    edit: aso, verstehe, da ist eh alles drin. Ich hab ehrlich gesagt keine Erfahrung mit Textmanipulation in C++, aber eine Zeile ist immer mit einem newline-Character abgeschlossen. Im schlimmsten Fall musst du dir die rausparsen.


Anmelden zum Antworten