找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 374|回复: 0

[图文教程] 零基础入门篇-013-指针的认识

[复制链接]

68

主题

369

回帖

1635

积分

管理员

积分
1635
发表于 2024-7-17 15:43:38 | 显示全部楼层 |阅读模式
认识指针之前我们先来了解一下地址
一、地址
我们知道声明一个变量的语法结构
数据类型 变量名 = 数据
例:整型 整数变量 = 10
(整型)数据类型:表示储存的信息类型
(整数变量)变量名:表示储存的信息
那么变量所在的内存地址如何表示?
语法:&变量名  //其中&是地址运算符
例:&整数变量
注意1:&变量表示的是一个16进制的地址
注意2:地址只能赋值给指针变量
想要将地址作为数据储存到变量中,必须通过指针进行强制转换
  1.         整型  整数变量
  2.         字符型 字符变量
  3.         调试输出("整数变量 变量的地址:", &整数变量)
  4.         调试输出("字符变量 变量的地址:", (空类型*)&字符变量)
复制代码
通过上面的实例,我们了解了什么是内存地址以及如何访问它。接下来让我们看看什么是指针
二、指针
指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址
就像其他变量或常量一样,您必须在使用指针存储其他变量地址之前,对其进行声明
指针变量声明的一般形式为:类型 *变量名称
在这里,类型 是指针的基类型,它必须是一个有效的 炫语言 数据类型,变量名称 是指针变量的名称
用来声明指针的星号 * 与乘法中使用的星号是相同的。但是,在这个语句中,星号是用来指定一个变量是指针
所有指针的值的实际数据类型,不管是整型、浮点型、字符型,还是其他的数据类型,都是一样的,都是一个代表内存地址的十六进制数
不同数据类型的指针之间唯一的不同是,指针所指向的变量或常量的数据类型不同
使用指针时会频繁进行以下几个操作:定义一个指针变量、把变量地址赋值给指针、访问指针变量中可用地址的值
这些是通过使用一元运算符 * 来返回位于操作数所指定地址的变量的值。下面看实例:
  1.         整型  变量1 = 20   // 实际变量的声明
  2.         整型  *指针变量 = 空       // 指针变量的声明
  3.         指针变量 = &变量1       // 在指针变量中存储 变量1 的地址
  4.         调试输出("变量1变量的值", 变量1)
  5.         调试输出("指针变量中存储的地址",指针变量)
  6.         调试输出("访问指针中地址的值", *指针变量)
复制代码
注意1:
指针在使用之前一定要进行初始化,没有初始化的指针是非常危险的,
使用没有初始化的指针会破坏数据,导致程序崩溃
注意2:
指针变量和变量的数据类型必须一致,否则没法使用。
如果需要这样使用,则需要进行强制转换

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|炫语言 | 炫彩界面库 | 用户所需, 正是我所做! ( 鄂ICP备2023014763号-1 )

GMT+8, 2025-5-25 01:29 , Processed in 0.072745 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表