#include "input.h" #include #include // TODO: // eine Funktion implementieren, die ein einzelnes Wort aus einer Textdatei (words.txt) einliest und als C-String zurückgibt. // Read words from file and store in 'words' array int readWords(FILE *file, char words[][MAX_WORD_LEN], unsigned int maxWordCount) { unsigned int count = 0; char buffer[256]; // temporärer Speicher für Zeilen // Solange Zeilen vorhanden sind while (fgets(buffer, sizeof(buffer), file) != NULL) { char *token = strtok(buffer, " \t\r\n.,;:!?()[]{}\"'"); // Trennzeichen while (token != NULL) { // Sicherheitscheck: Nicht über maxWordCount hinausgehen if (count >= maxWordCount) return count; // Nur gültige Wörter übernehmen // (z. B. alles in Kleinbuchstaben) for (int i = 0; token[i]; i++) token[i] = tolower((unsigned char)token[i]); // In words[count] kopieren strncpy(words[count], token, MAX_WORD_LEN - 1); words[count][MAX_WORD_LEN - 1] = '\0'; // String terminieren count++; token = strtok(NULL, " \t\r\n.,;:!?()[]{}\"'"); } } return count; }