Jaipur Geschrieben 11. April 2002 Geschrieben 11. April 2002 Hi, gibt es unter C eine Stringfunktion die einen string in einen anderen string einfügt? char string1[] = hllo char string2[] = a schnittstelle: void string( char string1, char string2, int pos) beispiel: void string( string1, string2, 2) ergebnis = hallo
Eight Geschrieben 11. April 2002 Geschrieben 11. April 2002 Also ich meine es gibt keine solche Funktion. Aber versuchs doch mal hiermit: void InsertString( char string1[], char string2[], int nPos ) { int len = strlen( string1 ); int len2 = strlen( string2 ); char buffer[255] = ""; strcpy( buffer, string1+nPos-1 ); strcpy( string1+nPos-1, string2 ); strcpy( string1+strlen(string1), buffer); strcpy( buffer, string1); memcpy( string1, buffer, sizeof(buffer) ); return; }
nic_power Geschrieben 12. April 2002 Geschrieben 12. April 2002 Da gibts zwei Moeglichkeiten, entweder Du schreibst Dir selbst eine entsprechende Funktion (das Beispiel oben funktioniert nur bedingt und prueft keinerlei Randbedinungen ab) oder Du verwendest - sofern Du auf einem Linux System arbeitest - die Glib, dort gibts es die passenden Funktion: struct GString { gchar *str; gint len; }; GString* g_string_new (const gchar *init); GString* g_string_insert (GString *string, gint pos, const gchar *val); Du musst dann allerdings GString in Deinem Programm verwenden bzw. bei Bedarf erzeugen. Nic
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden