Usando ssize_t vs int
Código
Tengo una función en la que puedo escribiruno De las cuatro formas posibles:
int do_or_die(int retval);
int do_or_die(ssize_t retval);
ssize_t do_or_die(int t retval);
ssize_t do_or_die(ssize_t retval);
Y entonces se llamará conambos De estas formas para las funciones de la biblioteca:
written = do_or_die(write(...)); // POSIX write returns ssize_t
printed = do_or_die(printf(...)); // printf returns int
Preguntas¿Qué prototipo debo usar?¿Qué tipos debo dar awritten
yprinted
?Quiero tener el código más robusto y estándar, mientras sigo teniendo solo unodo_or_die
función.
Estoy usando C99 en este caso, pero si la respuesta es diferente para C11, también me gustaría saberlo para el futuro.