C语言放弃之什么是指针

  1. 参考书籍:<C语言程序设计:现代方法>
  2. 几年前学习C语言因为没能理解指针, 放弃了. 结果现在还是得重新学习, 看来逃避是没有用的(现在流的泪都是以前脑子进的水)
  3. 指针

变量

一个变量拥有以下四个属性:

int a;
a=2;
  • 变量类型 (int)
  • 变量地址 (&a)
  • 变量名 (a)
  • 变量值 (2)

赋值

赋值是将变量地址代表的内存存储的变量值修改成相应的值

int a, b;
a=2;
b=a;
//变量b中的  变量地址  的内存存储的  变量值  修改成2

指针变量的概念

如果某变量存储了另外一个变量的变量地址, (该变量的变量值和另一变量的变量地址相等)那么称该变量为指针变量
(该变量是一个指向另一个变量的指针)

*号的作用

指针的理解在于*

  • 声明中*表示标识作用, 表示这个变量有别于普通变量, 是一个指针变量.使用的时候像普通变量一样对待. (因为操作地址的关系, 赋值要小心)
int *a;
//a是一个指针变量
  • 非声明情况下, *会将变量中变量值作为变量地址, 取出其中的值
    可以看做*&的逆运算. &是取址, *是取值.(有点别扭)
int b, *a;
b=2;
a=&b;
//a的值是变量b地址, 那么*a就是b, 取出a值所代表地址中的值

作用

函数可以改变变量的值

void decompose(double x, long *int_part, double *frac_part);
{
*int_part= (long) x;
*frac_part=x-*int_part
}
int i;
double d;
decompose(3.14159, &i, &d);
//i,d的值变成3, 0.14159

练习

int **p//*p说明p是个指针, **p说明p是一个指向指针的指针

待续...

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 指针是C语言中广泛使用的一种数据类型。 运用指针编程是C语言最主要的风格之一。利用指针变量可以表示各种数据结构; ...
    朱森阅读 3,495评论 3 44
  • 第十章 指针 1. 地址指针的基本概念: 在计算机中,所有的数据都是存放在存储器中的。一般把存储器中的一个字节称为...
    坚持到底v2阅读 1,098评论 2 3
  • 一、GPS基础知识 什么是GPS系统? GPS主系统是居心叵测的老美发射运行的卫星系统,包含了27颗能持续发送地理...
    普玄物联阅读 866评论 0 1
  • 1 我喜欢的雪很久没有落下了。 夕阳最后一抹余晖从汾河上退去,终于消逝在我的眼底。 霍太山...
    贾鲁听涛阅读 743评论 2 4
  • 有了孩子,睡眠被频频打断。真正的体验了“一孕傻三年”。为了改变现状,加入爱学习社群组织。别人都那么出色了,还是那...
    靖益求精阅读 189评论 0 1