C语言新手在指针(数组)方面遇到的一些问题

图片说明

    在主函数中对一个数组赋值可以这样操作:a[10]={0,0,0,0,0,0,0,0,0,0};
  但为什么在int *get(int *p,int *b, int n)函数中无法这样直接赋值(会显示初始值设置项值太多),是不是因为*b这个指针变量只能存放数组的首地址。
  但如果是这个原因的话,为什么用for循环的方法却可以正常赋值,for循环方法不也是在数组中赋值吗

b是指针
b[10]可不是指针
你说的主函数中应该是

 int a[10]={0,0,0,0,0,0,0,0,0,0};

这样的操作吧。

b[10]={0,0,0,0,0,0,0,0,0,0};

左值是变量,右值是数组。

b[9]++当然可以,这是对变量的操作