| #include <stdio.h> | |
| #include <stdint.h> | |
| // This simple program is to test the lldb Python API SBValue.GetChildAtIndex(). | |
| int g_my_int = 100; | |
| const char *days_of_week[7] = { "Sunday", | |
| "Monday", | |
| "Tuesday", | |
| "Wednesday", | |
| "Thursday", | |
| "Friday", | |
| "Saturday" }; | |
| const char *weekdays[5] = { "Monday", | |
| "Tuesday", | |
| "Wednesday", | |
| "Thursday", | |
| "Friday" }; | |
| const char **g_table[2] = { days_of_week, weekdays }; | |
| typedef int MyInt; | |
| struct MyStruct | |
| { | |
| int a; | |
| int b; | |
| }; | |
| struct MyBiggerStruct | |
| { | |
| int a; | |
| int b; | |
| int c; | |
| }; | |
| struct Container | |
| { | |
| int discriminator; | |
| union Data { | |
| struct MyStruct small; | |
| struct MyBiggerStruct big; | |
| } data; | |
| }; | |
| int main (int argc, char const *argv[]) | |
| { | |
| uint32_t uinthex = 0xE0A35F10; | |
| int32_t sinthex = 0xE0A35F10; | |
| int i; | |
| MyInt a = 12345; | |
| struct MyStruct s = {11, 22}; | |
| struct MyBiggerStruct f = { 33, 44, 55 }; | |
| struct Container my_container; | |
| my_container.data.big = f; | |
| int *my_int_ptr = &g_my_int; | |
| printf("my_int_ptr points to location %p\n", my_int_ptr); | |
| int *fixed_int_ptr = (int*)(void*)0xAA; | |
| int *another_fixed_int_ptr = (int*)(void*)0xAA; | |
| int *a_null_int_ptr = NULL; | |
| const char **str_ptr = days_of_week; | |
| for (i = 0; i < 7; ++i) | |
| printf("%s\n", str_ptr[i]); // Break at this line | |
| // and do str_ptr_val.GetChildAtIndex(5, lldb.eNoDynamicValues, True). | |
| return 0; | |
| } |