有关指针的小结

简介: 1.首先要准确的弄清楚指针的含义,指针就是地址。   这个比较容易,前面也有提到,就不多解释了。 2.什么叫“指向”?   地址就意味着指向,因为通过地址能找到具体该地址的对象。但是应该注意,并不是任何类型数据的地址都可以存放在同一个指针变量中的,只有与指针变量的基类型相同的数据的地址才能存在相应的指针变量中。

1.首先要准确的弄清楚指针的含义,指针就是地址。

  这个比较容易,前面也有提到,就不多解释了。

2.什么叫“指向”?

  地址就意味着指向,因为通过地址能找到具体该地址的对象。但是应该注意,并不是任何类型数据的地址都可以存放在同一个指针变量中的,只有与指针变量的基类型相同的数据的地址才能存在相应的指针变量中。例如:

int a,*p;      //p是int*型的指针变量,基类型是int型

float b;

p=&a;        //a是int型,合法

p=&b;        //b是float型,类型不匹配

3.要深入掌握在对数组的操作中正确使用指针

一位数组名代表数组首元素的地址,如:

int *p,a[10];

p=a;

p是指向int型类型的指针变量,显然,p只能指向数组中的元素(int型变量),而不是指向真个数组。在进行赋值时,一定要先确定赋值号两侧的类型是否相同,是否允许=赋值。

4.有关指针变量的归纳比较

5.指针运算

(1).指针变量加减一个整数,将该指针变量的原值(是一个地址)和它所指向的变量所占用的存储单元的字节数相加减。

(2).指针变量赋值,将一个变量地址赋给一个指针变量,例如:

p=&a;

p=array;

p=&array[i];

p=max;

p1=p2;

注意:不应该把一个整数赋给指针变量

(3)两个指针变量可以相加减

(4)两个指针变量可以比较

6.指针变量可以有空值,即指针变量不指向任何变量

p=NULL;

其中NULL是一个符号常量,代表整数0,在stdio.h的头文件中对NULL进行了定义:    #define NULL 0;它是指向地址为0的单元。

 

相关文章
|
存储 关系型数据库 数据库
【北亚企安数据恢复】Ceph分布式存储基本架构&Ceph数据恢复流程
Ceph存储可分为块存储,对象存储和文件存储。Ceph基于对象存储,对外提供三种存储接口,故称为统一存储。 Ceph的底层是RADOS(分布式对象存储系统),RADOS由两部分组成:OSD和MON。 MON负责监控整个集群,维护集群的健康状态,维护展示集群状态的各种图表,如OSDMap、MonitorMap、PGMap和CRUSHMap。 OSD负责存储数据、复制数据、平衡数据、恢复数据,与其它OSD间进行心跳检查等。通常情况下一块硬盘对应一个OSD。
|
Java 数据库
Springboot 根据数据库表自动生成实体类和Mapper,只需三步
Springboot 根据数据库表自动生成实体类和Mapper,只需三步
8242 2
Springboot 根据数据库表自动生成实体类和Mapper,只需三步
|
关系型数据库 MySQL Linux
Navicat15连接本地虚拟机的Mysql(Centos7)
Navicat15连接本地虚拟机的Mysql(Centos7)
1071 0
Navicat15连接本地虚拟机的Mysql(Centos7)
|
10月前
|
算法 量子技术 决策智能
探索量子计算:从历史到现状
探索量子计算:从历史到现状
433 6
|
人工智能 自然语言处理
冬天到了,用OmniGen生成一个温暖的拥抱
近期,北京智源人工智能研究院(BAAI)正式推出了一款名为OmniGen的新型多功能图像生成模型。
|
关系型数据库 MySQL
Mysql 建表时报错 invalid ON UPDATE clause for 'create_date' column
原文:Mysql 建表时报错 invalid ON UPDATE clause for 'create_date' column 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.
3468 0
|
JavaScript 前端开发 数据库
测试开发之路--Flask 之旅 (四):登录与权限控制
本文介绍了如何使用 Flask-Security 和 Flask-Login 实现权限管理和用户登录功能。首先讲解了 Flask 的消息闪现功能,用于向模板传递信息。接着介绍了如何利用 Flask-Security 的 `roles_required` 和 `roles_accepted` 装饰器保护页面,并展示了如何通过 `current_user` 获取当前用户信息。最后提到了使用 Flask-Login 时应避免升级至 0.4.0 版本,以防出现兼容性问题。通过这些技术,搭建了一个基本的用户权限管理系统。
584 6
测试开发之路--Flask 之旅 (四):登录与权限控制
|
Java 数据库连接 数据格式
【Java笔记+踩坑】Spring基础2——IOC,DI注解开发、整合Mybatis,Junit
IOC/DI配置管理DruidDataSource和properties、核心容器的创建、获取bean的方式、spring注解开发、注解开发管理第三方bean、Spring整合Mybatis和Junit
【Java笔记+踩坑】Spring基础2——IOC,DI注解开发、整合Mybatis,Junit
|
算法 Java Go
【经典算法】LeetCode 69. x 的平方根(Java/C/Python3/Golang实现含注释说明,Easy)
【经典算法】LeetCode 69. x 的平方根(Java/C/Python3/Golang实现含注释说明,Easy)
277 1
|
安全 程序员 Shell
2022渗透测试-命令执行漏洞的详细讲解
渗透测试-命令执行漏洞的详细讲解
2022渗透测试-命令执行漏洞的详细讲解

热门文章

最新文章