1、问题
在数组中找特定元素并返回指向该位置的指针
2、代码实现
#include <stdio.h>
#include <stdlib.h>//数组中找特定元素并返回指向该位置的指针
int *find_int(int key, int array[], int array_len)
{int i;for (i = 0; i < array_len; i++){if (array[i] == key)return &array[i];}return NULL;
}
int main()
{int a[10] = {1, 2, 3, 4, 5, 6, 7, 8};int *p = NULL;int len = sizeof(a) / sizeof(a[0]);printf("len is %d\n", len);p = find_int(5, a, len);if (p){printf("*p is %d\n", *p);}else{printf("p is NULL");}
}
3、运行结果
1111deMacBook-Pro:dabian a1111$ vim find_int.c
1111deMacBook-Pro:dabian a1111$ gcc -g find_int.c -o find_int
1111deMacBook-Pro:dabian a1111$ ./find_int
len is 10
*p is 5