xref: /llvm-project/lldb/test/API/python_api/process/main.cpp (revision 14186773e79b8c6787afac2f9ee69738151377ec)
199451b44SJordan Rupprecht #include <stdio.h>
299451b44SJordan Rupprecht #include <stdint.h>
399451b44SJordan Rupprecht 
499451b44SJordan Rupprecht // This simple program is to test the lldb Python API related to process.
599451b44SJordan Rupprecht 
6*14186773SJim Ingham static char my_char = 'u';
799451b44SJordan Rupprecht char my_cstring[] = "lldb.SBProcess.ReadCStringFromMemory() works!";
899451b44SJordan Rupprecht char *my_char_ptr = (char *)"Does it work?";
999451b44SJordan Rupprecht uint32_t my_uint32 = 12345;
1099451b44SJordan Rupprecht int my_int = 0;
1199451b44SJordan Rupprecht 
main(int argc,char const * argv[])1299451b44SJordan Rupprecht int main (int argc, char const *argv[])
1399451b44SJordan Rupprecht {
1499451b44SJordan Rupprecht     for (int i = 0; i < 3; ++i) {
1599451b44SJordan Rupprecht         printf("my_char='%c'\n", my_char);
1699451b44SJordan Rupprecht         ++my_char;
1799451b44SJordan Rupprecht     }
1899451b44SJordan Rupprecht 
1999451b44SJordan Rupprecht     printf("after the loop: my_char='%c'\n", my_char); // 'my_char' should print out as 'x'.
2099451b44SJordan Rupprecht 
2199451b44SJordan Rupprecht     return 0; // Set break point at this line and check variable 'my_char'.
2299451b44SJordan Rupprecht               // Use lldb Python API to set memory content for my_int and check the result.
2399451b44SJordan Rupprecht }
242e7ec447SPeter S. Housel 
test_read(char * ptr)252e7ec447SPeter S. Housel char test_read (char *ptr)
262e7ec447SPeter S. Housel {
272e7ec447SPeter S. Housel     return *ptr;
282e7ec447SPeter S. Housel }
292e7ec447SPeter S. Housel 
test_write(char * ptr,char c)302e7ec447SPeter S. Housel void test_write (char *ptr, char c)
312e7ec447SPeter S. Housel {
322e7ec447SPeter S. Housel     *ptr = c;
332e7ec447SPeter S. Housel }
34