指針與數組
阿新 • • 發佈:2018-12-06
div \n 元素 for span 得到 stdio.h 如果 引用
首先指針就是地址,數組本身就是地址,所以輸入時可以不需要取地址符‘&‘,但如果引用數組的元素,就必須得加&符。
通過指針引用數組:
用一個指針變量指向一個數組元素
#include<stdio.h> int main() { int a[5]={2,5,8,3,5}; int *p; p=&a[0]; printf("%d",*p); return 0; }
運行結果:2
當printf("%d",*p);改為printf("%d",p);時,每次的運行結果為不同的7位數字,表達的是地址。
p=&a[0];等價於p=a;(a為函數名),因為p=a;的作用是把a數組的首元素的地址賦給指針變量p。
同時,int *p;p=&a[0];等價於int *p=a;
數組是不能進行自加自減運算,需要借助指針變量。
若指針變量p指向a的元素a[0]:
1、p++:使得p指向下一個元素a[1],則*p為元素a[1]的值。
2、*p++:等價於*(p++),先得到p所指向的值*p,在進行p++運算。
3、*(++p):先使p自加1,再取*p的值。
4、(*p)++:表示p所指向的元素值自加1。
打印下列圖形:
A
BC
DEF
GHIJ
#include<stdio.h>; int main() { int i,j,k=0,p=0; for(i=0;i<4;i++) { k++; for(j=0;j<k;j++) { p++; printf("%c",64+p); } printf("\n"); } }
指針與數組