1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #include <stdio.h> typedef struct thing { char *x; }thing_t; void f4(thing_t *bob) { bob->x = "changed"; } void f3(thing_t *bob) { f4(bob); printf("inside f3 x: %s\n", bob->x); } void f2(thing_t *bob) { f3(bob); } void f1(thing_t *bob) { f2(bob); } int main(void) { thing_t foo; foo.x = "same"; printf("Before: %s\n", foo.x); f1(&foo); printf("After: %s\n", foo.x); return 0; } |
I2luY2x1ZGUgPHN0ZGlvLmg+Cgp0eXBlZGVmIHN0cnVjdCB0aGluZyB7CiAgICBjaGFyICp4Owp9dGhpbmdfdDsKCnZvaWQgZjQodGhpbmdfdCAqYm9iKSB7CiAgICBib2ItPnggPSAiY2hhbmdlZCI7Cn0KCnZvaWQgZjModGhpbmdfdCAqYm9iKSB7CiAgICBmNChib2IpOwogICAgICAgIHByaW50ZigiaW5zaWRlIGYzIHg6ICVzXG4iLCBib2ItPngpOwp9Cgp2b2lkIGYyKHRoaW5nX3QgKmJvYikgewogICAgZjMoYm9iKTsKfQoKdm9pZCBmMSh0aGluZ190ICpib2IpIHsKICAgIGYyKGJvYik7Cn0KCmludCBtYWluKHZvaWQpIHsKICAgIHRoaW5nX3QgZm9vOwogICAgZm9vLnggPSAic2FtZSI7CiAgICBwcmludGYoIkJlZm9yZTogJXNcbiIsIGZvby54KTsKICAgIGYxKCZmb28pOwogICAgcHJpbnRmKCJBZnRlcjogJXNcbiIsIGZvby54KTsKICAgIHJldHVybiAwOwp9
-
upload with new input
-
result: Success time: 0s memory: 1720 kB returned value: 0
Before: same inside f3 x: changed After: changed


