String kette erzeugen

Ja, das geht natürlich auch. Gibt wie immer einige Varianten das hier zu lösen.

wieso 81 Zeichen? bezieht sich das auf den http-header der vom php-script kommt?
das sind doch mehr oder? ich hab sie noch nicht gezählt...
wenn dem so ist, kann man da einen sicherheitspuffer einbauen oder bleibt dieser header zu 100% immer gleich?

Das war mal willkürlich gewählt. Ich vorhin schon erwähnt, dass du eigentlich nur Speicher für deinen String + 1 brauchst. Kommt halt drauf an wie lang der ist. Wenn das alles ist, kannst du das auch auf z.B. 21 kürzen.

Die anderen Zeichen die davor ankommen (d.h. der Header) werden nicht abgespeichert, da erst ab dem @ in das Array geschrieben wird.

Man kann natürlich auch so Sachen machen wie das Datum und die Uhrzeit aus dem Header einlesen. Dann müsste man dann mehr speichern. Aber auch sonst wieder einiges ändern. Aber für den Fall kann der Header entfallen. Man muss ihn also nur aus dem Eingangspuffer auslesen und die Zeichen dann gleich verwerfen.

if (response>=32 && charcount<sizeof(text)-1)

Mit dieser zusätzlich Abfrage auf 32 wäre die LF Variante aber glaube ich nicht gegangen. Selbst wenn da eins käme

wieso >= 32 ?

Die ersten 31 Zeichen sind nicht-darstellbare Steuerzeichen. Wie z.B. Linefeed oder Carriage Return. Damit werden die überlesen. Das hier nicht unbedingt nötig. Kommt immer drauf an was man genau gemacht. Gerade wenn man eben das LF verarbeiten will oder zur Darstellung braucht darf man es nicht überlesen. Der Teil stammt aus dem Code von jurs und ich hatte das halt einfach kopiert.

Die zweite Abfrage auf die Größe des Arrays ist, dass man keinen Pufferüberlauf produziert. Du kannst in C lustig über Array Grenzen hinweg in andere Speicher schreiben. -1 weil noch Platz für den Null-Terminator sein muss.