c语言指针什么时候加星号,c语言中指针前面的星号,什么时候可以省去,什么时候又必须带上呢?(转载)...
解释一:
其实没那么复杂。主要是区别于在声明定义的时候,有的人会迷惑,要不要加*
如下
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语言中指针前面的星号,什么时候可以省去,什么时候又必须带上呢?(转载)...相关推荐
- html自动识别语言,SyntaxHighlighter自动识别并加载脚本语言
SyntaxHighlighter是一个使用JavaScript编写的支持多种编程语言语法高亮的JS插件,很多大型网站或博客都在使用. SyntaxHighlighter插件默认是每种编程语言加载对应 ...
- c语言scanf在%后加.意义,C语言scanf函数详细解释
while(scanf("%d,%d",&a,&b)!=2)fflush(stdin); c=a+b; printf("%d+%d=%d",a, ...
- c语言switch为什么要加break,c语言学习笔记 switch case语句为什么要加break
先来看一个没有break的例子: int main() { int a = 1; switch (a) { case 1: printf("1"); case 2: printf( ...
- c语言字符串每个字母加4,C语言基础:各字符型数据
C语言作为当时备受好评的编程语言,一直到现在都没有退出人们的视野.java之父说过"对于每一个计算机专业人士,他们所接触的第一种编程语言就是C语言.(C语言)有着如此多的令人惊奇的地方,这也 ...
- char类型怎么输入 c语言_还没搞懂C语言指针?这里有最详细的纯干货讲解(附代码)...
21ic综合自网络信息 指针对于C来说太重要.然而,想要全面理解指针,除了要对C语言有熟练的掌握外,还要有计算机硬件以及操作系统等方方面面的基本知识.所以本文尽可能的通过一篇文章完全讲解指针. 为什么 ...
- c语言贪吃蛇最简单代码_C语言指针,这可能是史上最干最全的讲解啦(附代码)!!!...
点击上方"大鱼机器人",选择"置顶/星标公众号"福利干货,第一时间送达!指针对于C来说太重要.然而,想要全面理解指针,除了要对C语言有熟练的掌握外,还要有计算机 ...
- c语言怎样统计数组的长度,C语言指针难吗?纸老虎而已,纯干货讲解
原标题:C语言指针难吗?纸老虎而已,纯干货讲解 指针对于C来说太重要.然而,想要全面理解指针,除了要对C语言有熟练的掌握外,还要有计算机硬件以及操作系统等方方面面的基本知识.所以本文尽可能的通过一篇文 ...
- c语言常量l12和意义,课件c语言l12_指针和数组
<课件c语言l12_指针和数组>由会员分享,可在线阅读,更多相关<课件c语言l12_指针和数组(42页珍藏版)>请在人人文库网上搜索. 1.计算机程序设计基础第12讲指针和数组 ...
- 结构体前面加星号_C语言中带星号的类型指针有哪些特性
C语言中带星号的类型指针有哪些特性 指针是什么?很多人说,指针就是地址,那这么说的人肯定是对指针有所了解,他们这么说也不能说全错,我只能在这里说:"他们并没有真正学会指针,如果想学好指针,请 ...
- c语言字符串加减_C语言中指针的介绍
C语言中指针的介绍 指针是C语言中广泛使用的一种数据类型. 运用指针编程是C语言最主要的风格之一.利用指针变量可以表示各种数据结构:能很方便地使用数组和字符串: 并能象汇编语言一样处理内存地址,从而编 ...
最新文章
- Elasticsearch1.x 基于lc-pinyin和ik分词实现 中文、拼音、同义词搜索
- android如何删除项目,AndroidStudio中怎样删除项目
- [语]××语录@××--第1篇
- Docker,使生信分析更简单、可重复
- 微信小程序|开发实战篇之十一---商品页面和购物车页面
- np.where与np.argwhere共同点与区别分析
- element-ui 组件库 el-form 实现
- lua io.read()
- reactNative之react-native-picker
- python类方法在类外定义_第7.15节 Python中classmethod定义的类方法详解
- NODEJS数据库增删改查
- 计算机网络技术专业毕业论文参考选题,计算机网络技术专业毕业论文参考选题...
- kafka消费策略 随笔
- ubuntu安装frps服务器与xtcp配置
- Excel 图表与数据透视表制作
- linux中进程与cpu核的绑定
- html网页打不开二级网页,教你二级网页打不开怎么解决
- 高效解决PPA软件源卡顿出错的问题(ppa.launchpad.net)
- ROS入门教程(三)—— 用C++实现Hello world
- 给工商银行信用卡中心发传真
热门文章
- Navicat-数据库的连接以及使用
- Webots2021b和ROS2调试笔记21-07-27
- 静态路由和动态路由详解
- 疾病研究:重症肌无力
- #{}和${}的使用
- 台式计算机耳机有杂音怎么办,小编教你解决电脑耳机有噪音和杂音怎么办几个方法!...
- lenovo电脑的麦克风没有声音?声音小?甚至有杂音,无法聊天?
- 在线SQL转XML工具
- 【AI学习总结】均方误差(Mean Square Error,MSE)与交叉熵(Cross Entropy,CE)损失函数
- 基于Zemax的望远镜物镜设计