指针入门学习 -- A Beginner's guide to Pointers
扫描二维码
随时随地手机看文章
A Beginner's guide to Pointers
这是我翻译的一篇文章,主要向初学者介绍C/C++的灵魂——指针。
原作者是:Andrew Peace
What are Pointers?
指针是什么?
基本上,指针同其他变量是一样的.只是,它们的不同之处在于:其它变量包含实际的数据,而指针包含一个指示器,这个指示器指向一块能够找到信息的内存区域.这是一个非常重要的概念,许多程序和思想依赖于指针把指针作为设计的基础,比如链表.
Getting Started
我如何定义一个指针?Well, 像定义其它变量一样, 只是需要在它的名字前加一个星号(*).例如,下面的代码创建了两个指针, 它们都指向一个整型.
int* pNumberOne;
int* pNumberTwo;
注意到两个变量名前的前缀 'p'了吗?这是一个习惯的用法, 指出一个变量是一个指针.
现在,让这些指针实际地指向一些东西:
& 标记应当读作"...的地址"( 'the address of'),因为得到了一个变量的存储区域的地址,而不是变量本身.所以,在这个例子里, pNumberOne 被设置为等于some_number的地址, pNumberOne现在指向some_number.
pNumberOne = &some_number;
pNumberTwo = &some_other_number;
What we've learnt so far: an example:
Phew! 有许多需要注意的地方,我建议如果你没有理解这些概念,你应当再读一次. 指针是一个复杂的主题,需要花一段时间才能掌握.
这儿是一个例子,示范上面讨论的一些概念思想.它是用C语言写的, 不是C++(C的扩充).