//Gibt den index des letzten characters des Wortes, beginnend beim index "start" zurück int findEndOfWord(int start, char * str){ int i = start; while(str[i + 1] != 32 && str[i + 1] != 10){ i++; } return i; } //Kopiert den Teil-String von "src", beginnend beim index "start" bis zum index "end"(einschließlich) in "dest". void copyString(int start, int end, char * src, char * dest){ int i = 0; for(i = 0;i <= (end - start); i++){ dest[i] = src[start + i]; } dest[i] = '\0'; return; } int main(){ char string[100]; char split_string[100][100]; int wordNumber = 0; int wordEnd = 0; strcpy(string, "Das ist ein Test\nDas auch"); printf("%s\n\n\n", string); int i = 0; while(string[i] != '\0'){ wordEnd = findEndOfWord(i, string); copyString(i, wordEnd, string, split_string[wordNumber]); wordNumber++; i = wordEnd } }