Se sei obbligato ad usare il NULL, non puoi usare le funzioni stringa.
Devi trattare la tua stringa destinazione come se fosse (che poi lo è) un semplice array di caratteri di cui sei obbligato tu a tenere conto della lunghezza raggiunta durante la concatenazione.
Grosso modo una cosa del genere.
Codice PHP:
#define MAXLEN 1024
char destString[MAXLEN ];
int cnt,current_destChar, total_len;
current_destChar = total_len = 0;
while(total_len < MAXLEN ) {
int lenStr = strlen(stringaRicevuta)+1;
for (cnt=0; cnt < lenStr && current_destChar < MAXLEN; cnt++,current_destChar++) {
destString[current_destChar] = stringaRicevuta[cnt];
}
total_len+=lenStr;
}