c语言输出方框□怎么回事_值得收藏的 C语言指针讲解文章,确实不错!

来源 :https://zlc.im/language/c/c_and_pointer.md#%E6%8C%87%E9%92%88

指针

本文介绍C语言的指针相关知识.

指针是什么?

指针和其他的int, float等类似, 是一种类型. 有类型就有相应类型的变量和常量. 本文主要讨论变量的情况.

指针变量就是一种变量, 和其他种类的变量类似, 但指针和其他变量又有区别.

首先C语言作为一种类型语言, 每个变量都会有几个属性.

  • 变量名称.

  • 变量类型.

  • 变量的值.

例如int a = 3, 变量名称就是a, 变量类型是int, 变量的值是3, 如果不提供初始值, 那么变量的值可能是一个随机值.

也就是说, 任何时候看到一个变量, 就会有这3个属性.

对于指针变量, 可以认为有4个属性.

  • 指针变量的名称.

  • 指针变量的类型, 即指针类型.

  • 指针变量的值, 即一个地址.

  • 指针变量的值所指向的内存里的数据类型. 本文称做"指向类型".

可以看到指针变量的关键在于指针所指向的内存里面数据的类型.

例如int a = 3; int *b = &a;, 指针变量名称是b, 指针变量类型是指针, 变量b的值是变量a的内存地址. 变量b所指向的内存的数据类型是int. 指针变量多了一个"变量b所指向的内存的数据类型是int”, 本文将指针变量所指向的内存的数据类型称做指向类型.

任何时候看到一个指针就需要关注4点内容: 名称, 指针类型, 指针值, 指向类型. 搞清楚这几个内容, 就可以弄明白指针怎么回事, 当然还要记忆 一些例外的情形.

类型

对于C语言来说, 搞清楚变量的类型相当重要, 涉及到指针的时候就更加重要. 看到一个指针变量后需要理解其指向类型.

例如char * const * (*next)(), next是一个指针, 那么其指向类型是什么? 这个声明/定义比较复杂, 日常编程可能就会碰到比较 复杂的情况, 所以要搞清楚指针首先要懂得怎么看一个声明/定义的变量的类型.

如果看到一个变量的声明或者定义, 那么就需要弄明白变量的类型. 在<>这本书中有一部分内容专门讲解怎么分析 一个变量的类型, 值得

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值