c语言指针笔记
2015-06-09 23:03
579 查看
一、*表示这是一个指针变量,&表示一个变量的地址。
例:int a; int *p = &a; 这里&a表示变量a的地址,*p表示取p变量存储的地址上的值。
二、&*与*&的区别
int a;
p = &a;
此处&*p就是先执行*p,即去取p所指地址的值,相当于*p取出变量a,再进行取地址操作,&*p即取出a的地址,相当于&a.
此处*&a就是就是先计算&运算,即先取出a的地址,然后进行*运算,取出地址上的值,即变量a。
三、一维数组与指针,当定义一个一维数组时,其数组的名字就是数组在内存的首地址。若定义一个指针变量将数组的首地址传给指针
变量,则该指针就指向了这个一维数组。
如: int *p,a[10];
p=a;
或者 int *p = a;
或者 int *p = &a[0];
例:int a; int *p = &a; 这里&a表示变量a的地址,*p表示取p变量存储的地址上的值。
二、&*与*&的区别
int a;
p = &a;
此处&*p就是先执行*p,即去取p所指地址的值,相当于*p取出变量a,再进行取地址操作,&*p即取出a的地址,相当于&a.
此处*&a就是就是先计算&运算,即先取出a的地址,然后进行*运算,取出地址上的值,即变量a。
三、一维数组与指针,当定义一个一维数组时,其数组的名字就是数组在内存的首地址。若定义一个指针变量将数组的首地址传给指针
变量,则该指针就指向了这个一维数组。
如: int *p,a[10];
p=a;
或者 int *p = a;
或者 int *p = &a[0];
相关文章推荐
- C++的隐式类型转换
- C++——i++与++i
- 把学习当成项目来执行之初试牛刀--Modern C++ Design学习
- C++ 中的类型转换函数
- 【Text Justification】cpp
- C++中如何避免内存泄露
- 对C++中顺序容器的插入迭代器的认识
- c语言中scanf等函数关于输入流缓冲区
- C++ bool值
- C语言基础练习:在Xcode中练习的for循环语句
- C++继承时派生类与基类有同名函数时如何分别引用
- zerglurker的C语言教程004——指针初步讲解
- Java基础 Java与C++的几点细节不同
- ###《More Effective C++》- 操作符
- C++归并算法
- 某整形数组中除了两个单身整数外, 其余的整数都是成对出现的, 利用C/C++代码求出这两个单身整数。 要求: 时间复杂度o(n), 空间复杂度o(1)------某公司招聘试题
- C++中 引入虚基类的作用
- C++内存对齐
- 【学习笔记】【C语言】选择结构-if
- C++类 (03)