指针是程序员不可避免要去了解的,但是相比于哪些要深入了解指针的文章,本文主要是让读者对指针有清晰明了的认知,复杂的指针用法并不涉及。
指针初探
int* p;
p = new int();
*p = 9;
cout << *p;
这段代码首先声明了一个指针变量 p
,该指针变量可以指向一个整型数据。
然后,通过 new
关键字在堆上动态分配了一个整型变量的空间,并将该空间的地址赋给指针变量 p
。这意味着现在 p
指向了一个整型变量的内存空间。
接下来,通过 *p = 9;
的语句,将整型变量的值设为了 9,即将值 9 存储到 p
指向的内存空间中。
最后,通过 cout << *p;
将指针变量 p
指向的整型变量的值输出到标准输出流中。因为该值已被设置为 9,所以输出将会是 9
。
需要注意的是,在程序的任何地方都应该记得释放动态分配的内存,以避免内存泄漏。在这个例子中,应该在不再需要指针指向的内存空间时使用 delete
关键字释放内存,例如:
delete p;
这样做将释放 p
所指向的整型变量的内存空间,并将 p
设置为 nullptr
。