Что мне делать, чтобы получить полное возвращаемое значение программы c -из командной строки?

У меня есть простая программа C -"./my_program"

#include 

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;

}

В результате это программа печатает:

return_result = 1140 = 0x474 

Я хочу получить возвращаемое значение программы c -в скрипте bash. По этой ссылке Как получить возвращаемое значение программы c из командной строки? Я должен получить эту переменную из $?

Но когда запускаю такие команды следствие:

./my_program
echo $?

получаю

116

Очевидно, что 116 = 0x74 (младший байт ). Но я хотел бы получить все значение unsigned int. Что не так? Что мне делать, чтобы получить все возвращаемое значение программы c -из командной строки? Речь идет не только о типе "unsigned int". Что делать, если я создал какой-то сложный тип, например структуру -.

Я попробовал это.:

return ((unsigned int) return_result_section_size);

Не работает.

6
задан Community 23 May 2017 в 10:30
поделиться