Feldinhalt übergeben
-
hallo leute,
ich möchte einem feld feldelemente eines anderen feldes übergeben.
z.B. in einem bestimmten feld steht "Gummibär", nun möchte ich in einem feld nur
"Gummi" ausgeben und den Rest also "bär" in einem anderen.
freu mich auf eure hilfe.
mfg
fevernova
-
Hi fevernova,
ich verstehe nicht ganz dein Problem; falls du nicht weisst, wie du die einzelnen Wörter "Gummi" und "Baer" aus deinem zusammengesetzten Wort kopieren kannst..-> Du musst die Elemente des Feldes einzeln kopieren, also in einer Schleife über alle Buchstaben, die zum ersten Wort gehören, und dann mit einer zweiten Schleife über alle Buchstaben, die zum zweiten gehören...falls ich mich schlecht ausgedrückt haben sollte (kommt leider ab und zu mal vor), hier mal ein kleines Prog., das die ganze Sache etwas veranschaulichen soll:#include <stdio.h> #define SIZE_ERSTES 5 #define SIZE_ZWEITES 4 int main (void) { char GanzesWort[]="Gummibaer"; char ErstesWort[SIZE_ERSTES],ZweitesWort[SIZE_ZWEITES]; for(int i=0;i<SIZE_ERSTES;++i) /*erste Schleife für "Gummi" */ { ErstesWort=GanzesWort[i]; /*Elemente einzeln kopieren*/ } ErstesWort[SIZE_ERSTES]='\0'; /*WICHTIG: Danach ein EoF ranhängen, damit klar ist, dass Char-Feld zu Ende ist*/ printf("ErstesWort: %s",ErstesWort); //ausgeben for(int h=0;h<SIZE_ZWEITES;++h) /*zweite Schleife für "Baer"*/ { ZweitesWort[h]=GanzesWort[SIZE_ERSTES+h]; } ZweitesWort[SIZE_ZWEITES]='\0'; printf("\n"); /*die neue Zeile kann man sicher noch geschickter einpacken*/ printf("ZweitesWort: %s",ZweitesWort); printf("\n"); return 0; }
So, für den Kopiervorgang gibts sicher auch ein paar Funktionen aus der STL, z.B. strcpy , aber ich weiss nicht, ob man dabei auch einen Teilbereich eines Strings angeben kann.
Gruß
[i]E-the-Real*
-
Damit geht das ganze hübscher:
Von [url]cppreference.com
[/url]strncat
Syntax: #include <string.h>
char *strncat( char *str1, const char *str2, size_t count );The function strncat() concatenates at most count characters of str2 onto str1, adding a null termination. The resulting string is returned.
Related topics:
strcat(), strnchr(), strncmp(), and strncpy().Hin und wieder mal in die Hilfe schauen, das hilft
(ok, blödes Wortspiel)