解释一:

其实没那么复杂。主要是区别于在声明定义的时候,有的人会迷惑,要不要加*

如下

int *p

p=&x;//此处明明是p=&x???????,好往下看

int *p=&x//其实在声明的时候这样也是可以的。但是这样写定义不明确。

我们现在来总结一下,在定义的时候*号,只是一个说明符。意义是告诉你p是一个指针,而不是一个其他数。在声明的时候就一定需要*了,

所以请注意上面的对比。

在引用的时候区别就相当简单了

p是指针变量,指的是一个变量的地址。

*p代表的是所指向的这个变量的值。

举例:

int a=3;

int *p

p=&a;

printf("%d%d",*p,p);

这个时候两个输出的值,第一个就是3(变量的值),第二个输出的是变量a存储的地址单位。

还有另一种解释,不过我感觉稍微差点 :

解释二:

定义,声明的时候,必须写

int * ip;

char * cp;

double *dp=NULL;

在使用的时候,*号并不是指针的标志,而是一种运算符号,意思是解应用。

int a=5;

int b=3;

int * ip=&a;

那么,直接使用ip,ip是这个地址,是一个指针,比如ip=&b,那么ip就指向了b。

而使用*ip,是对ip进行解引用计算,也就是取出ip指向的内容,*ip的值是5(a的值),*ip=b,是对ip指向的地址赋值,此时你输出a,得到的值是3

希望能帮到你,不懂再问我

***********************************************

一个指针,指向一个数据,也就是间接地使用了这个数据,我们可以称之为引用。

直接使用ip,就是间接使用(得到地址),通过地址解析出原始数据,可以称之为解引用,所以*ip就得到了ip指向的数据。

可能叫做 "地址解析"之类的你更容易明白吧

c语言指针什么时候加星号,c语言中指针前面的星号,什么时候可以省去,什么时候又必须带上呢?(转载)...相关推荐

  1. html自动识别语言,SyntaxHighlighter自动识别并加载脚本语言

    SyntaxHighlighter是一个使用JavaScript编写的支持多种编程语言语法高亮的JS插件,很多大型网站或博客都在使用. SyntaxHighlighter插件默认是每种编程语言加载对应 ...

  2. c语言scanf在%后加.意义,C语言scanf函数详细解释

    while(scanf("%d,%d",&a,&b)!=2)fflush(stdin); c=a+b; printf("%d+%d=%d",a, ...

  3. c语言switch为什么要加break,c语言学习笔记 switch case语句为什么要加break

    先来看一个没有break的例子: int main() { int a = 1; switch (a) { case 1: printf("1"); case 2: printf( ...

  4. c语言字符串每个字母加4,C语言基础:各字符型数据

    C语言作为当时备受好评的编程语言,一直到现在都没有退出人们的视野.java之父说过"对于每一个计算机专业人士,他们所接触的第一种编程语言就是C语言.(C语言)有着如此多的令人惊奇的地方,这也 ...

  5. char类型怎么输入 c语言_还没搞懂C语言指针?这里有最详细的纯干货讲解(附代码)...

    21ic综合自网络信息 指针对于C来说太重要.然而,想要全面理解指针,除了要对C语言有熟练的掌握外,还要有计算机硬件以及操作系统等方方面面的基本知识.所以本文尽可能的通过一篇文章完全讲解指针. 为什么 ...

  6. c语言贪吃蛇最简单代码_C语言指针,这可能是史上最干最全的讲解啦(附代码)!!!...

    点击上方"大鱼机器人",选择"置顶/星标公众号"福利干货,第一时间送达!指针对于C来说太重要.然而,想要全面理解指针,除了要对C语言有熟练的掌握外,还要有计算机 ...

  7. c语言怎样统计数组的长度,C语言指针难吗?纸老虎而已,纯干货讲解

    原标题:C语言指针难吗?纸老虎而已,纯干货讲解 指针对于C来说太重要.然而,想要全面理解指针,除了要对C语言有熟练的掌握外,还要有计算机硬件以及操作系统等方方面面的基本知识.所以本文尽可能的通过一篇文 ...

  8. c语言常量l12和意义,课件c语言l12_指针和数组

    <课件c语言l12_指针和数组>由会员分享,可在线阅读,更多相关<课件c语言l12_指针和数组(42页珍藏版)>请在人人文库网上搜索. 1.计算机程序设计基础第12讲指针和数组 ...

  9. 结构体前面加星号_C语言中带星号的类型指针有哪些特性

    C语言中带星号的类型指针有哪些特性 指针是什么?很多人说,指针就是地址,那这么说的人肯定是对指针有所了解,他们这么说也不能说全错,我只能在这里说:"他们并没有真正学会指针,如果想学好指针,请 ...

  10. c语言字符串加减_C语言中指针的介绍

    C语言中指针的介绍 指针是C语言中广泛使用的一种数据类型. 运用指针编程是C语言最主要的风格之一.利用指针变量可以表示各种数据结构:能很方便地使用数组和字符串: 并能象汇编语言一样处理内存地址,从而编 ...

最新文章

  1. Elasticsearch1.x 基于lc-pinyin和ik分词实现 中文、拼音、同义词搜索
  2. android如何删除项目,AndroidStudio中怎样删除项目
  3. [语]××语录@××--第1篇
  4. Docker,使生信分析更简单、可重复
  5. 微信小程序|开发实战篇之十一---商品页面和购物车页面
  6. np.where与np.argwhere共同点与区别分析
  7. element-ui 组件库 el-form 实现
  8. lua io.read()
  9. reactNative之react-native-picker
  10. python类方法在类外定义_第7.15节 Python中classmethod定义的类方法详解
  11. NODEJS数据库增删改查
  12. 计算机网络技术专业毕业论文参考选题,计算机网络技术专业毕业论文参考选题...
  13. kafka消费策略 随笔
  14. ubuntu安装frps服务器与xtcp配置
  15. Excel 图表与数据透视表制作
  16. linux中进程与cpu核的绑定
  17. html网页打不开二级网页,教你二级网页打不开怎么解决
  18. 高效解决PPA软件源卡顿出错的问题(ppa.launchpad.net)
  19. ROS入门教程(三)—— 用C++实现Hello world
  20. 给工商银行信用卡中心发传真

热门文章

  1. Navicat-数据库的连接以及使用
  2. Webots2021b和ROS2调试笔记21-07-27
  3. 静态路由和动态路由详解
  4. 疾病研究:重症肌无力
  5. #{}和${}的使用
  6. 台式计算机耳机有杂音怎么办,小编教你解决电脑耳机有噪音和杂音怎么办几个方法!...
  7. lenovo电脑的麦克风没有声音?声音小?甚至有杂音,无法聊天?
  8. 在线SQL转XML工具
  9. 【AI学习总结】均方误差(Mean Square Error,MSE)与交叉熵(Cross Entropy,CE)损失函数
  10. 基于Zemax的望远镜物镜设计