高校网站建设的优势和不足,外贸网站seo优化方案,wordpress设置标题字体大小,学it要多久多少学费指针函数#xff1a;函数的返回值可以是整型值、浮点型值、字符型值等#xff0c;在C语言中还允许一个函数的返回值是一个指针#xff08;地址#xff09;#xff0c;这种返回指针的函数称为指针函数。
指针函数语法格式#xff1a;
基类型 * 函数名#xff08;参数列…指针函数函数的返回值可以是整型值、浮点型值、字符型值等在C语言中还允许一个函数的返回值是一个指针地址这种返回指针的函数称为指针函数。
指针函数语法格式
基类型 * 函数名参数列表;指针函数代码示例
#includestdio.h
int * func(int * arr,int size)//第一个*返回值是指针
{int * p arr;int i;for(i0;isize;i){if(*(arri)*p){p arr i;} }return p;
}
int main()
{int arr[5]{8,3,9,5,2};int *p func(arr,5);printf(数组中最大的元素是%d,其地址是%d\n,*p,p);return 0;
}
函数指针变量的定义如果在程序中定义了一个函数在编译时编译器为函数代码分配一段存储空间这段存储空间的起始地址又称入口地址称为这个函数的指针。
定义一个指向函数的指针变量用来存放某一函数的起始地址 这就意味着此指针变量指向该函数。
函数指针语法格式
返回值类型*变量名参数列表;
函数指针变量代码示例
#includestdio.h
//定义函数
int func(int a,int b)
{return a b;
}
int main()
{int result;int(*p)(int,int); //定义函数指针变量 p func; //函数指针指向函数 result (*p)(3,5);//通过函数指针调用函数printf((*p)(3,5) %d\n,result);return 0;
}
函数指针作为函数参数指向函数的指针变量的一个重要作用是把函数的地址作为参数传递到其他函数。函数指针作为函数参数把函数的入口地址传递给形参就能在被调函数中使用实参函数了。
void func(int(*p)(int,int),int b,int n);
代码示例
#include stdio.h
#include stdlib.h
#include time.h
int main()
{int arr[5];int *p[5];int *temp;int i,j;srand((unsigned int)time(0));//强制类型转换for(i0;i5;i){arr[i]rand()%10;} //原始数组 printf(初始数组元素);for(i0;i5;i){printf(%d ,arr[i]);}printf(\n);//从小到大排序 for(i0;i5;i){p[i]arr[i];}for(i3;i0;i--){for(j0;ji;j){if(*p[j]*p[j1]){tempp[j];p[j]p[j1];p[j1]temp;}}}printf(从小到大排序); for(i0;i5;i){printf(%d ,*p[i]);}printf(\n);//现在的数组printf(现在数组元素);for(i0;i5;i){printf(%d ,arr[i]);}printf(\n); return 0;
}
随机生成指定长度的字符串
代码示例
#include stdio.h
#include stdlib.h
#include time.h
int main()
{int len,i;char *bufferNULL;//接收maloocsrand((unsigned int)time(0));printf(你想要多长的串:); scanf(%d,len);buffer(char*)malloc(len1);if(bufferNULL)exit(1);for(i0;ilen;i){buffer[i]rand()%26a;}buffer[len]\0;//字符串结束标志 空字符printf(随机数%s\n,buffer);free(buffer);//释放空间 return 0;
}