数组的指针是数组的起始地址
数组元素的指针是数组元素的地址
当指针变量指向数组或数组变量时,他就是指向数组的指针变量:
(1):数组名代表数组的首地址
(2):int a[10],*p;p=a与p=&a[0]等价
*(p+i) *(a+i) p[i] 与a[i]等价,代表数组的第i+1个元素
指针变量的算法效率最高
指针变量是地址变量,数组名是地址常量
数组地址不能随意改变
但是指针变量可以指向不同地址,可以自增自减,加减等
二维数组的指针
数组名a
a+i代表第i+1行地址
p代表首地址,p+1代表下一行
字符串指针:字符串的首地址
char *指针变量名
char *a=“hello”
printf("%s",a)
错误表达,为啥?