¿Cómo convertir de ASCII a Hex y viceversa?

Necesito convertir ASCII a HEX y HEX a ASCII usando un progtwig en C.
¿Cómo puedo hacer eso?

Aquí hay una función simplista para convertir un carácter en una cadena hexadecimal.

 char hexDigit(unsigned n) { if (n < 10) { return n + '0'; } else { return (n - 10) + 'A'; } } void charToHex(char c, char hex[3]) { hex[0] = hexDigit(c / 0x10); hex[1] = hexDigit(c % 0x10); hex[2] = '\0'; } 

Es bastante fácil. Escanea personaje por personaje … lo mejor es comenzar desde el final. Si el carácter es un número entre 0 y 9 o una letra entre a y f, colóquelo en la posición correcta desplazándolo hacia la izquierda según la cantidad de dígitos que haya encontrado hasta el momento.

Para convertir a una cadena, entonces usted hace lo mismo pero primero enmascara y desplaza a la derecha los valores. Luego los conviertes al personaje y los colocas en la cadena.