tablice wielowymiarowe i bufory transferowe

Próbuję zapisać bufor w segmentach tablicy o długości 1800 znaków. Kiedykolwiek jestem w stanie przenieść bufor, ale kiedy próbuję wydrukować każdy nowy bufor. Dla wyniku otrzymuję wartość null. Co właściwie robię źle?

EDYCJA - Zmieniłem pętlę, aby dodać zakończenia zerowe do końca drugiego wymiaru. teraz wyjście mówi mi, że ma wartość NULL. Aleprintf("%c") mówi, że dane zostały przeniesione.

<code>while(buf_pos < msg_size+1){
    if(buf_pos % 1800 == 0){
        msg_buff[key_num][cbuf_pos]='\0';
        key_num++;
        cbuf_pos=0;
        msg_buff[key_num][cbuf_pos]=buf[buf_pos];
    }else
        msg_buff[key_num][cbuf_pos]=buf[buf_pos];

    printf("%c",msg_buff[key_num][cbuf_pos]);
    cbuf_pos++;
    buf_pos++;
}
</code>

questionAnswers(2)

yourAnswerToTheQuestion