имя переменной, аргументы функции во время выполнения в C
Можно ли узнать аргументы функций и типы имен переменных во время выполнения в C-программе? Например, если у меня есть функция:
int abc(int x, float y , somestruct z ){
char a;
int b ;
}
Могу ли я узнать внутри этой функцииabc()
Какие имена аргументов и переменныхто есть в этом случае егоx
, y
, z
, a
, b
и они имеют типint
, float
, somestruct
, char
, int
.
Скажите, есть ли другая функция:
float some_func(specialstruct my_struct, int index){
}
Я должен знать, что аргументы namemy_struct
, index
и типыspecialstruct
, int
.
Мне нужна эта информация во время выполнения?
У меня есть доступ к базовому указателю и адресу возврата, могу ли я получить необходимую информацию, используя указатель выше.
Мне удалось извлечь имя функции, используя адрес возврата иdladdr()
функция.
я вижуGDB
делает это, так что должно быть возможно извлечь эту информацию?