指针函数学习笔记(一)

概念:指针函数是指一个函数的返回值是地址量的函数。

指针函数的定义的一般形式如下
<数据类型> * <函数名称>(<参数说明>)
{
语句序列;
}

下面有个错误代码,错误比较隐蔽。

#include <stdio.h>
#include <string.h>
char * mystring()
{
 char str[20];
 strcpy(str,"Hello");
 return str;
}
int main()
{
 printf("%s\n",mystring());
 return 0;
}

上述问题在于内存分配,str是一个局部变量,放在栈区,函数结束后就消亡了,因此返回回来的只是一个没有任何意义的地址,输出也只是一串乱码,在以后如果有改错题并且存在指针,大部分情况都是内存分配出错,错误较为隐蔽,因此要注意。

最后,着重强调,指针函数的返回值在这里插入图片描述
最后,说明一下指针函数的用处:多用于复合语句的使用。

猜你喜欢

转载自blog.csdn.net/hua15617159775/article/details/84781681