Welche Methode ist effizienter, wenn Sie Strings in C verketten?

Ich bin auf diese beiden Methoden zum Verketten von Zeichenfolgen gestoßen:

Allgemeiner Teil:

char* first= "First";
char* second = "Second";
char* both = malloc(strlen(first) + strlen(second) + 2);

Methode 1:

strcpy(both, first);
strcat(both, " ");       // or space could have been part of one of the strings
strcat(both, second);

Methode 2:

sprintf(both, "%s %s", first, second);

In beiden Fällen ist der Inhalt vonboth wäre"First Second".

Ich möchte wissen, welche effizienter ist (ich muss mehrere Verkettungsoperationen ausführen) oder ob Sie einen besseren Weg kennen, dies zu tun.

Antworten auf die Frage(10)

Ihre Antwort auf die Frage