Wie werden zwei char * in C dargestellt?

8

Ich erhalte einen char * -Puffer, der die Länge 10 hat. Aber ich möchte den ganzen Inhalt in meiner Struktur mit einer Variablen char * concattieren.

%Vor%

In etwa so:

%Vor%

Wie kann ich das in C machen?

    
Valter Silva 17.03.2012, 02:56
quelle

3 Antworten

10

Im Allgemeinen tun Sie Folgendes (passen Sie an und fügen Sie eine Fehlerüberprüfung hinzu, wie Sie es für richtig halten)

%Vor%     
Java42 17.03.2012, 03:37
quelle
4

Sie können strcat(3) zum Verketten von Strings verwenden. Stellen Sie sicher, dass Sie genügend Speicherplatz am Zielort zugewiesen haben!

Beachten Sie, dass der Aufruf von strcat() einige Male zu einem Algorithmus von Schlemiel the Painter führt. Das Nachverfolgen der Gesamtlänge in Ihrer Struktur (oder anderswo, wenn Sie bevorzugen) wird Ihnen dabei helfen.

    
Carl Norum 17.03.2012 02:57
quelle
0

Ich bin nicht klar. Willst du:

  • Verknüpfen Sie jeden der 10 Zeichen-Puffer, die Sie erhalten, in ein Array, auf das ein real[0].buffer oder
  • zeigt
  • Möchten Sie, dass auf jeden 10-Zeichen-Puffer mit einem anderen real[i].buffer oder
  • hingewiesen wird?
  • etwas anderes?

Sie müssen genügend Speicherplatz für die Kopie des Puffers reservieren:

%Vor%     
gbulmer 17.03.2012 03:25
quelle

Tags und Links