C中的指针数组

Fla*_*ash 2 c pointers

Hii,

我编写了以下代码来改进它以获得更高的数据结构.

#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>

int display(int *a , int *b , int *c)
 {
  a[0] = b;
  a[1] = c;
  printf("\n%d %d",a[0],a[1]);                ------- point 1
  printf("\n %d %d",*(a[0]),*(a[1]));         ------- point 2
  return 1;
 } 
int main()
 {
  int *a[5];
  int b,c;
  scanf("%d %d",&b,&c);
  printf("%d %d",b,c);
  display(a,&b,&c);
  getchar();
 }
Run Code Online (Sandbox Code Playgroud)

我得到了第1点的地址,但我没有得到第2点的值....我做错了什么...如果我的程序本身是错的,请给我一个示例代码,可以取消引用一系列指针获取数组元素指向的值...

rlb*_*ond 6

这段代码不应该编译.签名display应该是int display(int **a , int *b , int *c),因为a是一个指针int*(记住数组降级为指针).然后,您需要编写printf("\n%d %d",*a[0],*a[1])以取消引用数组中的指针.