Kann sein, ich dachte aber das geht auch mit ohne strings. Das Problem ist wahrscheinlich das char[1] aus der Fehlermeldung. Was passiert, wenn du text einfach mal so deklarierst:
char *text;
oder
char text[100];
Ich wuerde an deiner Stelle ruhig mal nen Blick auf Strings riskieren, die sind IMHO deutlich einfacher zu verwenden als diese .....eligen char*, die hab ich nie so richtig verstanden.
PS: Was mir grad so auffaellt: wenn du char* verwendest, musst du darauf achten, dass du immer den Speicher auch allokiert hast. D.h. entweder ne konstante Groesse (z.B. char x[100] in dem Fall ist Platz fuer 100 Zeichen) angeben, oder mit malloc reservieren. Sonst gibts wahrscheinlich irgendwann nen Segfault oder Memory fault oder sowas in der Art...