B
Du meinst das hier?
Label1->Caption.sprintf("Test %s ",p); //So etwas bringt keinen Erfolg:
Das funktioniert deswegen nicht, weil Caption keine Membervariable von TLabel ist, sondern eine Property. Das bedeutet, das hier evtl. eine Zugriffsfunktion (read/write) aufgerufen wird. Die würde dir in deinem Fall einen temporären AnsiString erzeugen, in welchen dann geschrieben wird. Die eigentliche Caption bleibt unverändert.
Folgendes dagegen würde funktionieren.
AnsiString tstr;
tstr.sprintf("Test %s ",p);
Label1->Caption = tstr;