2019-01-24

C语言中数组名称也作为数组的首地址使用。数组a[10],a+i=&a[i]。

所以可以这样输入数组

scanf("%d",a+i);

指针变量可以自增,可以这样枚举数组中元素。

#include <stdio.h>

int main(){

  int a[10]={1,2,3,4,5,6,7,8,9,10};

  for(int* p=a;p<a+10;p++){

    printf("%d ",*p);

  }

return 0;

}


指针的减法

int main(){

  int a[10]={1,4,9,16,25,36,49};

  int*p =a;

  int*q=&a[5];

  cout<<p<<endl;

  cout<<q<<endl;

  cout<<q-p;

return 0;

}

相差20B int是4B 所以相差5个int 所以输出了5.

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容