Разница в boto3 между ресурсом, клиентом и сессией?
Вы должны быть malloc'ing strlen (ptr), а не strlen (buf). Кроме того, ваш count2 должен быть ограничен числом слов. Когда вы дойдете до конца своей строки, вы продолжаете перебирать нули в своем буфере и добавляете нулевые строки в свой массив.