以下程序从理论上是正确的还是错误的? 在TC++ 3.0 环境没有任何编译和连接的警告或错误,运行结果正确。
我想问的核心问题是:程序没有明确地为指针p分配地址,这时会自动分配合理地址吗?会不会胡乱分配?可能我们多数时不这样使用指针,但是我必须把它搞明白。请指教。
#include "stdio.h"
void main() { int *p; *p=77; printf("%d\n",*p); }
非常感谢 ysm123 先生 / 小姐。
我总结您的指点:
1 【指针加*可以当变量来使用】既然当变量用,当然系统会分配合理的内存地址,而不会乱用内存空间。
2 上面程序虽合理,不会有问题,但按程序规范性来说,很不规范,一般不要这样用。
对不起,写错你的名字了。应该是 yms123 ,我写成 ysm123 了。
感谢您的解答。