C语言与指针学习随笔,勉励自己学习用!
-->变量不一定按照声明顺序保存在内存中
-->&运算符可取得变量的地址(指向变量的指针)
? ? *运算符可取得地址的变量
int j=10;? ?
int *p=&j;? //指针p指向j
int k=*p;? //取得指针p指向的变量
-->声明
int *p;?
int* p; //等价
int* p,p1;? //无法声明两个指针变量,第二变量为int型
-->对指针加N,指针前进“当前指针指向的数据类型长度xN”
-->数组下标从0开始
int array[10];? ?
array[0] -> array[9]? //10个元素
-->数组与指针
int array[];? ?
int *p;
?
p=array[0];
p=array;//使指针p指向数组array起始元素地址?
?
*(p+i)? ? ?
p[i]?
? /*数组名[数组元素]? ? ?
数组名 -> 数组起始元素地址,可以理解为指针*/?
array[2];?
*(array+2);//二者等价
?