uint32_t t = (uint32_t) line;
Это неправильный способ преобразования строки в число в C. Возможно, вы захотите использовать strtoul
вместо этого. И ваш qsort также неверен (неправильное количество элементов, неправильный размер элемента).
parArray[lineCounter] = strtoul(line, NULL, 10);
/* ... */
qsort(parArray, lineCounter, sizeof(uint32_t), compar);
Вы определяете свою функцию compar
внутри другой функции. Это расширение GCC, и вы не должны его использовать, если не планируете переносимость.