¿Qué tipo para restar 2 size_t's?
¿Qué tipo de C debería usarse para representar la diferencia entre los tamaños de dos objetos?
Comosize_t
esta sin firmar, algo como
size_t diff = sizeof (small_struct) - sizeof (big_struct);
obviamente no sería correcto y me parece que no hay un equivalente real firmado.
ptrdiff_t
Suena un poco tentador, pero
ptrdiff_t
¿En tal plataforma de 32 bits también? Si es así, la diferencia entre dos objetos de tamaño solo requiere 16 bits, pero el uso de ptrdiff_t le dará una variable de 32 bits de ancho, por lo que es subóptima.Entonces, ¿cuál es un tipo adecuado y portátil para trabajar con ese valor?
Edit:
Sé sobre ssize_t, pero es