- 博客(0)
- 资源 (4)
空空如也
函数指针和指针函数的理解
我知道函数指针是指向函数的指针,指针函数还是指一个函数的返回值是一个指针,但下面
的几道题还是感觉很迷惑。各位能否讲的详细点呢?
(1)float(**def)[10] def是什么?
(2)double*(*gh)[10] gh是什么?
(3)double(*f[10])() f是什么?
(4)int*((*b)[10]) b是什么?
这样老感觉有点乱,有什么窍门可以记得并理解的清楚一点么?
(1)def是一个指针, 指向的对象也是一个指针, 指向的指针最终指向的是10个float构成的
2012-05-07
指针函数和函数指针
一、指针函数
当一个函数声明其返回值为一个指针时,实际上就是返回一个地址给调用函数,以用于需要指针或地址的表达式中。
格式:
类型说明符 * 函数名(参数)
当然了,由于返回的是一个地址,所以类型说明符一般都是int。
例如:int *GetDate();
int * aaa(int,int);
函数返回的是一个地址值,经常使用在返回数组的某一元素地址上。
2012-05-07
C程序中用指针变量作函数参数
函数的参数不仅可以是整型、实型、字符型等数据,还可以是指针类型,它的作用是将一个变量的地址传送到另一个函数中,具体应用如下:
一、 用指向变量的指针作函数参数
使用指针变量作函数参数,在被调用函数中改变了变量的值,也就是改变了main函数中变量的值。
1. 指针变量作函数与变量作函数的区别
c语言规定实参变量对形参变量的数据传递是“值传递”即单向传递、只有实参传给形参,而不能有形参传给实参,在内存中实参与形参是不同的存储单元。在调用函数时,给形参分配存储单元,并将实参对应的值传递给形参,调用结束后,形参单元被释放,实参单元仍保留并维持原值。因此,在执行一个被调用函数是,形参的值如果发生改变,并不会改变主调函数的值。
2012-05-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人