¿Qué debo hacer para obtener todo el valor de retorno de c-program desde la línea de comandos?

Tengo un programa C simple"./my_program"

<code>#include <stdio.h>

int main (int argc , char **argv) {


   unsigned int return_result = 0x474;
   printf("return_result = %d = 0x%x \n",return_result,return_result);
   return return_result;

}
</code>

Como resultado, este programa imprime:

<code>return_result = 1140 = 0x474 
</code>

Quiero obtener un valor de retorno de c-program dentro del script bash. De acuerdo a este enlaceDe todos modos para obtener el valor de retorno del programa c desde la línea de comandos? Debería obtener esta variable desde $?

Pero cuando lanzo tales comandos consecuencia:

<code>./my_program
echo $?
</code>

yo obtengo

<code>116
</code>

Es obvio que 116 = 0x74 (el byte más bajo). Pero me gustaría obtener todo el valor int sin firmar. ¿Qué está mal? ¿Qué debo hacer para obtener todo el valor de retorno de c-program desde la línea de comandos? No se trata solo del tipo "unsigned int". Qué debo hacer en caso de que creara algún tipo complicado, por ejemplo, - estructura.

Intenté esto:

<code>return ((unsigned int) return_result_section_size);
</code>

No funciona

Respuestas a la pregunta(2)

Su respuesta a la pregunta