diff options
author | rodri <rgl@antares-labs.eu> | 2020-02-22 09:56:09 +0000 |
---|---|---|
committer | rodri <rgl@antares-labs.eu> | 2020-02-22 09:56:09 +0000 |
commit | a39951d8f69209cfea2b7051832b851914e662ef (patch) | |
tree | e4cd1c32e5d6f531b523f6fda558cc3a5f603547 /isptrmod.c | |
download | brokentoys-a39951d8f69209cfea2b7051832b851914e662ef.tar.gz brokentoys-a39951d8f69209cfea2b7051832b851914e662ef.tar.bz2 brokentoys-a39951d8f69209cfea2b7051832b851914e662ef.zip |
now version controlled.
Diffstat (limited to 'isptrmod.c')
-rw-r--r-- | isptrmod.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/isptrmod.c b/isptrmod.c new file mode 100644 index 0000000..912a66d --- /dev/null +++ b/isptrmod.c @@ -0,0 +1,27 @@ +#include <u.h> +#include <libc.h> + +/* + * this program proofs that effectively, pointer arguments are passed by + * value and its modification doesn't extend beyond the scope of the + * currently running procedure. + */ + +void +incptr(char *p) +{ + p += 3; + print("%s\n", p); +} + +void +main() +{ + char *s; + + s = "hi there!"; + print("%s\n", s); + incptr(s); + print("%s\n", s); + exits(0); +} |