星鸿阁

 找回密码
 立即注册
搜索
热搜: 活动 交友 动画
查看: 870|回复: 0

指针函数

[复制链接]

2249

主题

2759

帖子

9603

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9603
发表于 2020-12-29 14:34:34 | 显示全部楼层 |阅读模式

下面看指针函数的实现:




  • int *f(int a, int b); // 声明指针函数







  • int _tmain(int argc, _TCHAR* argv[])



  • {



  •         printf("------------------------------ Start\n");







  •     int *p1 = NULL;



  •         printf("The memeory address of p1 = 0x%x \n", p1);







  •     p1 = f(1, 2);







  •         printf("The memeory address of p1 = 0x%x \n", p1);



  •         printf("*p1 = %d \n", *p1);







  •         printf("------------------------------ End\n");



  •         getchar();



  •         return 0;



  • }







  • /*



  • * 指针函数的定义



  • * 返回值是指针类型int *



  • */



  • int *f(int a, int b) {



  •         int *p = (int *)malloc(sizeof(int));



  •         printf("The memeory address of p = 0x%x \n", p);



  •         memset(p, 0, sizeof(int));



  •         *p = a + b;



  •         printf("*p = %d \n", *p);







  •         return p;



  • }



通过运行结果,可以看出,指针函数f返回的类型是一个指针类型,因为f是赋值给int类型指针p1的,如果不是指针类型,编译就会出错。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|starfluidga

GMT+8, 2024-12-21 01:23 , Processed in 0.015585 second(s), 21 queries .

Made by Liga 星鸿阁

Copyright © 2020-2048, LigaStudio.

快速回复 返回顶部 返回列表