История изменений
Исправление Ivan_qrt, (текущая версия) :
Единственных 2 вызова memcpy:
memcpy(c, a, lena);
memcpy(c + lena, b, lenb + 1);
Где c выделялся malloc'ом, а значит ни с кем не перекрывается, а значит вызовов memcpy() для перекрытых областей нет.
Я это имел ввиду.
А перекрытие входящих строк не проблема. Если a - указатель на середину b. (Ноль в конце у обоих общий).
Исходная версия Ivan_qrt, :
Единственных 2 вызова memcpy:
memcpy(c, a, lena);
memcpy(c + lena, b, lenb + 1);
Где c выделялся malloc'ом, а значит ни с кем не перекрывается, а значит вызовов memcpy() для перекрытых областей нет.
Я это имел ввиду.