#include <stdio.h>
void report(char* eaf, char* initials, char* foo)
{
printf("eaf = %p, initials = %p, foo = %p\n", eaf
, initials
, foo
);; printf("*eaf = %d, *initials = %d, *foo = %d\n", eaf
[0], initials
[0], foo
[0]); }
void load(char eaf[], char initials[], char foo[])
{
report(eaf, initials, foo);
report(eaf, initials, foo);
printf("Enter initial state\n"); report(eaf, initials, foo);
}
int main(int argc, const char* argv[])
{
char eaf[10], initials[1], foo[10];
report(eaf, initials, foo);
load(eaf, initials, foo);
report(eaf, initials, foo);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgp2b2lkIHJlcG9ydChjaGFyKiBlYWYsIGNoYXIqIGluaXRpYWxzLCBjaGFyKiBmb28pCnsKICAgIHByaW50ZigiZWFmID0gJXAsIGluaXRpYWxzID0gJXAsIGZvbyA9ICVwXG4iLCBlYWYsIGluaXRpYWxzLCBmb28pOzsKICAgIHByaW50ZigiKmVhZiA9ICVkLCAqaW5pdGlhbHMgPSAlZCwgKmZvbyA9ICVkXG4iLCBlYWZbMF0sIGluaXRpYWxzWzBdLCBmb29bMF0pOwp9Cgp2b2lkIGxvYWQoY2hhciBlYWZbXSwgY2hhciBpbml0aWFsc1tdLCBjaGFyIGZvb1tdKQp7CiAgICBwcmludGYoImxvYWRcbiIpOwogICAgcmVwb3J0KGVhZiwgaW5pdGlhbHMsIGZvbyk7CgogICAgcHJpbnRmKCJFbnRlciBFQUZcbiIpOwogICAgc2NhbmYoIiAlcyIsIGVhZik7CiAgICByZXBvcnQoZWFmLCBpbml0aWFscywgZm9vKTsKCiAgICBwcmludGYoIkVudGVyIGluaXRpYWwgc3RhdGVcbiIpOwogICAgc2NhbmYoIiAlcyIsIGluaXRpYWxzKTsKICAgIHJlcG9ydChlYWYsIGluaXRpYWxzLCBmb28pOwp9CgppbnQgbWFpbihpbnQgYXJnYywgY29uc3QgY2hhciogYXJndltdKQp7CiAgICBjaGFyIGVhZlsxMF0sIGluaXRpYWxzWzFdLCBmb29bMTBdOwogICAgcmVwb3J0KGVhZiwgaW5pdGlhbHMsIGZvbyk7CiAgICBsb2FkKGVhZiwgaW5pdGlhbHMsIGZvbyk7CiAgICByZXBvcnQoZWFmLCBpbml0aWFscywgZm9vKTsKCiAgICByZXR1cm4gMDsKfQo=
eaf = 0xbfb6bd6c, initials = 0xbfb6bd6b, foo = 0xbfb6bd76
*eaf = -117, *initials = -65, *foo = -74
load
eaf = 0xbfb6bd6c, initials = 0xbfb6bd6b, foo = 0xbfb6bd76
*eaf = -117, *initials = -65, *foo = -74
Enter EAF
eaf = 0xbfb6bd6c, initials = 0xbfb6bd6b, foo = 0xbfb6bd76
*eaf = 99, *initials = -65, *foo = -74
Enter initial state
eaf = 0xbfb6bd6c, initials = 0xbfb6bd6b, foo = 0xbfb6bd76
*eaf = 0, *initials = 105, *foo = -74
eaf = 0xbfb6bd6c, initials = 0xbfb6bd6b, foo = 0xbfb6bd76
*eaf = 0, *initials = 105, *foo = -74