守望星辰@ 2020-02-15 19:26 采纳率: 50%
浏览 239
已结题

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

图片说明

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

1条回答

  • 超超不是草草 2020-02-19 15:54
    关注

    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]++当然可以,这是对变量的操作

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办