Не так, что любая «передача данных» в итоге включает в себя этап парсинга последовательности байт. (Я даже не могу назвать это строками, т.к. строки из букв должны состоять, а не из байт. Но и если б были честные последовательности букв, было б не шибко лучше.) Повседневное программирование системы превращается в ад говна с регекспами, потому что комбинация любых двух юникс-утилит означает необходимость проходить через этот самый ад.
Можно, конечно, посомневаться, что это имеет отношение к Си, но Юникс (как и Unix way) это воплощение Си, и невооруженным глазом видна разница, скажем, с Лисп-системами, где этого ада говна нет, просто потому что любая повседневно используемая функция возвращает че-то заведомо более понятное — у всякого значения есть тип, и его всегда можно проверить.