首页技术指针函数返回值是什么?c语言函数返回指针

指针函数返回值是什么?c语言函数返回指针

编程之家2026-06-13955次浏览

大家好,关于指针函数返回值是什么很多朋友都还不太明白,今天小编就来为大家分享关于c语言函数返回指针的知识,希望对各位有所帮助!

指针函数返回值是什么?c语言函数返回指针

指针作为函数的返回值

f函数调用完b被回收的含义是:通知系统,b所占用的内存空间现在是自由的了,其他程序可以使用这块内存了,在被其他程序占用修改前,它还是以前的值。但什么时候会改变,谁也不知道,可能很久才会被其他程序占用,也可能立即会被修改,所以,不要返回一个局部变量的地址。

就你这个代码测试一下:

第二次输出就变了

什么是函数返回值

简单的说,函数就是一个算法,有不有返回值是跟这个函数做什么的有关系。

一般情况下,求和这类的就要返回值,比如

int add(int a,int b)

指针函数返回值是什么?c语言函数返回指针

{

return a+b;//这就返回a+b的和,用函数的时候,你只要传a,b的值就得了

}

用的时候这样:

int s=add(100,200);//就把100+200也就是300的值赋给s了

这种情况就是相当于你去A地做买东西,你肯定得拿东西回来。你拿回来的东西也就是返回值

指针函数返回值是什么?c语言函数返回指针

-------------------------------------------

还有些不用返回值的,比如,输出,或者给有地址的变量赋值等这些函数前面就可以用void表示无返回值,当然你也可以返回你想返回的。比如说成功或者失败返回true or false.也可以随意返回一个int型的 1或者0

比如:

void pri(int i)

{

printf("%d",i);//这个就是打印一个整型的i出来

}

这种就像你去A地不干什么,就去那儿吼两句,也就不用拿什么回来了。

还有种给有地址的变量赋值。那就相当于你去a地寄了一封信,也不用什么什么回来。

啊,打得手累,我就这样理解了。给是清楚点了,呵呵

例如你要计算5+3=?,这个就需要返回值啦,但你要是排列字符之类的,就不需要返回值,因为它是对字符进行操作,没有数字。

C语言怎么让一个函数返回指针

这种方式叫做“用指针函数*creat()的返回值来传递动态内存”,这是一个C语法

首先你要注意,子函数*creat()用了malloc动态申请内存,而return返回的是指针变量所指向的地址,而不是指针!相当于将你所申请的动态内存返回给主函数

int*fun(void)//这里是指针函数

{

int*p=(int*) malloc(int);//动态申请内存//p在这里指向了一块合法内存的地址

return p;

}

void main(void)

{

int*q= NULL;

q= fun();//fun()返回指针p所指向的地址,(指针p是在栈上创建的,所以*fun()函数运行完,指针所分配的内存被系统自动释放)这时q指向p,得到了malloc所申请到的内存

free(q);//释放动态内存

}

好了,文章到此结束,希望可以帮助到大家。

airpods总是自动断开连接,airpods2总是自动断开沃里克符文 虚空行者海克斯符文