C 语言允许您传递指针给函数,只需要简单地声明函数参数为指针类型即可。
无符号的 long 型指针给函数,并在函数内改变这个值
#include <stdio.h>#include <stdlib.h>#include <stdarg.h>#include <time.h> //这里需要加一个 time.h 的库void getSeconds(unsigned long *ptr);int main(int argc, char *argv[]) {unsigned long sec;getSeconds(&sec);printf(" Number of seconds: %ld\n",sec);// 输出实际值return 0;}void getSeconds(unsigned long *ptr){*ptr = time(NULL); // 获取当前的秒数return;}// 输出结果//Number of seconds: 1641448101
函数返回指针
返回指针必须先声明 一个返回指针的函数
C 语言不支持在调用函数时返回局部变量的地址,除非定义局部变量为 static 变量
实例 生成10个随机数 然后把10随机数返回到数组
#include <stdio.h>#include <stdlib.h>#include <stdarg.h>#include <time.h> //这里需要加一个 time.h 的库int *getRandom() //定义一个随机数 getRandom 随机{static int a[10];int i;//设置种子srand((unsigned)time(NULL));for (i=0;i<10;i++){a[i]=rand();printf("%d\n",a[i]);}return a;}int main(int argc, char *argv[]) {int *ptr;int i;ptr=getRandom();for(i=0;i<10;i++){printf("(*ptr+[%d]): %d\n",i,*(ptr+i));}return 0;}
打印
