...
Code Block | ||
---|---|---|
| ||
char const *p; void dont_do_this(void) { char const str[] = "This will change"; p = str; /* dangerous */ /* ... */ } void innocuous(void) { char const str[] = "Surprise, surprise"; } /* ... */ dont_do_this(); innocuous(); /* now,p itmight is likely that p is be pointing to "Surprise, surprise" */ |
...
Code Block | ||
---|---|---|
| ||
void this_is_OK(void) { char const str[] = "Everything OK"; char const *p = str; /* ... */ } /* pointer p is now inaccessible outside the scope of string str */ |
...