**C指针**
**从c指针基础开始学**
首先c指针的作用:简洁程序,有效的表示复杂的数据结构,实现动态的分配内存。
c指针的定义:
-
List item :一般形式 | 类型说明符 *变量名;|// “ * ”只是说明定义的是一个指针;
-
List item:指针变量的赋值 |eg:int i,*p; p=&i;简写:int i,*p=&i;|//&—-地址运算符| *—-指针运算符(间接存取运算符),可获取地址中的内容,
-如此可知 *p<=> i <=> *(&i)‘; -
List item:指针的运算| 指针运算的实质就是地址的计算;//只能进行算术,关系运算和赋值运算;/注*不同的数据类型的两个指针进行加减运算是没有意义的;
eg:px+n表示的实质地址量:(px)+sizeof(px的类型) *n;减n同理;
-最后注意:两指针相减的结果值不是地址量,而是两指针之间的相隔数据的个数。
在这里插入代码片
#include<stdio.h>
int main(int argc, char **argv)
{
int i=10;
int j=20;
int *p, *q;
p=&i;
q=p+2;
q=&j;
printf("*p=%d, *q=%d\n", *p, *q);
printf(“q-p=%d\n”,q-p);
printf("%p %d\n",&i,i);
printf("%p %d\n",&j,j);
return 0;
}
执行结果如下:
*p=10 *q=20
p-q=2
0xbfc2deac 10
0xbfc2de90 20
这里是引用
声明:因本人是c语言的beginner,此文章是学习过程的总结,大神误扰,大家一起学习交流,共同进步。
1115

被折叠的 条评论
为什么被折叠?



