Data types with fixed size are easy, they can be copied into a pre-allocated memory buffer, strings cannot because their length is unknown.