c语言中函数名前加*与不加*有什么区别
4个回答
展开全部
加*是返回指针
例如:
int add();//add()函数返回的是一个int类型的值
int* add();//add()函数返回的是一个int类型的指针
例如:
int add();//add()函数返回的是一个int类型的值
int* add();//add()函数返回的是一个int类型的指针
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2010-06-18
展开全部
加*的表示函数指针,可以指向一个函数的地址,然后再调用函数。
书上都有,你可以去找找
书上都有,你可以去找找
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
函数原型声明和定义中, 函数名前加 * 的表示返回值是指针。
例如标准库函数gets():
char *gets ( char *str );
从键盘读入一行字符串,如果读入成功,返回值与str 里 的 字符串相同。
--------------
int (*p)(); 这种声明是“定义 p 是一个指向函数的指针变量,此函数带回整型的返回值。”例如:
int max(int,int); //函数原型声明
int min(int,int); //函数原型声明
int (*p)();
int a,b,c;
p=max; // 将函数 max 的入口地址赋给指针变量p
scanf("%d,%d",&a,&b);
c=(*p)(a,b); // 等于 调用 c=max(a,b);
printf("a=%d,b=%d,max=%d",a,b,c);
p=min; // 将函数 min 的入口地址赋给指针变量p
c=(*p)(a,b); // 等于 调用 c=min(a,b);
printf("a=%d,b=%d,min=%d",a,b,c);
例如标准库函数gets():
char *gets ( char *str );
从键盘读入一行字符串,如果读入成功,返回值与str 里 的 字符串相同。
--------------
int (*p)(); 这种声明是“定义 p 是一个指向函数的指针变量,此函数带回整型的返回值。”例如:
int max(int,int); //函数原型声明
int min(int,int); //函数原型声明
int (*p)();
int a,b,c;
p=max; // 将函数 max 的入口地址赋给指针变量p
scanf("%d,%d",&a,&b);
c=(*p)(a,b); // 等于 调用 c=max(a,b);
printf("a=%d,b=%d,max=%d",a,b,c);
p=min; // 将函数 min 的入口地址赋给指针变量p
c=(*p)(a,b); // 等于 调用 c=min(a,b);
printf("a=%d,b=%d,min=%d",a,b,c);
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询