Co powinienem zrobić, aby uzyskać całą wartość zwracaną przez c-program z wiersza poleceń?

Mam prosty program w C"./my_program"

#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;

}

W rezultacie ten program drukuje:

return_result = 1140 = 0x474 

Chcę uzyskać wartość zwracaną przez program c w skrypcie bash. Zgodnie z tym linkiemW każdym razie, aby uzyskać wartość zwrotną programu c z wiersza poleceń?&nbsp;Powinienem pobrać tę zmienną z $?

Ale kiedy uruchamiam takie polecenia, konsekwencje:

./my_program
echo $?

dostaję

116

Jest oczywiste, że 116 = 0x74 (najniższy bajt). Ale chciałbym uzyskać całą wartość unsigned int. Co jest nie tak? Co powinienem zrobić, aby uzyskać całą wartość zwracaną przez c-program z wiersza poleceń? Nie chodzi tylko o typ „niepodpisany”. Co powinienem zrobić, gdybym utworzył jakiś skomplikowany typ, na przykład - struktura.

Próbowałem tego:

return ((unsigned int) return_result_section_size);

To nie działa.