?
Warum funktioniert das Programm nicht?
char* character;
char s_letter[26] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
//Warum funktioniert das Programm nicht mehr wenn diese schleife eingefügt wird?
//Warum verträgt sich der code unten, mit der obigen schleife nicht, was ist da //fürn Zusammenhang?
*character = s_letter[25];
printf("%s", character);
character ist ein Zeiger auf char, sollte also auf eine Speicherstelle mit einem char zeigen.
Tut es aber nicht, da character nichts zugewiesen wurde.
*character = s_letter[25]; ist im Prinzip richtig, aber character selber zeigt irgendwo hin, und an diese Stelle wird der Inhalt von s_letter[25] geschrieben. Sowas kann gut gehen, den Computer zum Absturz bringen oder den dritten Weltkrieg auslösen.
printf("%s", character); erwartet einen Null-Terminierten String. Und den hast du nicht, auch wenn character auf s_letter[25] zeigt.