写在前面: 与其说C++中的常量指针和指针常量是一块很有嚼头的语法糖,不如说它是一块相当难啃的骨头.其实本来没什么,这无非是const int *p与int* const p的区别, 但一涉及到起名字,特别是给他们戴上“常量指针”和“指针常量”的中文帽子,由于作者和译者(针对外文书)的不同,就出现了“张冠李戴”和“李冠张戴”的乱像,不知道谁是谁了,弄得人一头雾水,尤其是对于初学者.本文的目的就是针对这一细节,为大家将两者理清楚,同时说明在使用上的区别. 注意:1.const int *p也可写成…
本文参考http://www.prglab.com/cms/pages/c-tutorial/advanced-data/pointers.php http://blog.csdn.net/ameyume/article/details/8220832 1.函数指针 函数指针是一个指针,其指向的是一个函数,而不是普通的数据类型或者类对象.其定义如下: int (*func)(int a, int b); // 声明函数指针 函数指针的最大作用是将一个函数作为参数传递给另一个函数.函数指针的声明与…
指针作为函数参数传递 函数参数传递的只能是数值,所以当指针作为函数参数传递时,传递的是指针的值,而不是地址. #include "stdio.h" void pointer(int *p) { int a = 11; printf("\n\nEnter function"); printf("\nthe p is point to %p , addr is %X, *p is %d",p , &p, *p); *p =11; printf…