【时时三省】(C语言基础)指针变量例子

山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省

存放地址的变量是指针变量,它用来指向另一个对象(如变量、数组、函数等)。

那么,怎样定义和使用指针变量呢?

先分析一个例子。

例题

通过指针变量访问整型变量。

解题思路:

先定义2个整型变量,再定义2个指针变量,分别指向这两个整型变量,通过访问指针变量,可以找到它们所指向的变量,从而得到这些变量的值。

编写程序:

运行结果:

程序分析:

( 1 )在开头处定义了两个指针变量pointer _ 1和pointer _ 2。但此时它们并未指向任何一个变量,只是提供两个指针变量,规定它们可以指向整型变量,至于指向哪一个整型变量要在程序语句中指定。程序第6,7两行的作用就是使pointer _ 1指向a,pointer _ 2指向b,此时pointer _ 1的值为& a(即a的地址),pointer _ 2的值为&b。

( 2 )第8行输出变量a和b的值100和10。第9行输出*pointer_1和*pointer_2的值。其中的"*"表示"指向"。* pointer _1表示"指针变量pointer _1所指向的变量",也就是变量a。* pointer _ 2表示"指针变量pointer 2所指向的变量",也就是变量b。从运行结果看到,它们的值也是100和10。

( 3 )程序中有两处出现* pointer _ 1和* pointer _ 2,二者的含义不同。程序第5行的* pointer _ 1和*pointer_2表示定义两个指针变量pointer 1和pointer 2。它们前面的"*"只是表示该变量是指针变量。程序最后一行printf函数中的* pointer l和* pointer _2则代表指针变量pointer _ 1和pointer _2所指向的变量。

注意:定义指针变量时,左侧应有类型名,否则就不是定义指针变量。例如:

int * pointer _ 1 ;

相关推荐
[J] 一坚21 分钟前
华为OD、微软、Google、神州数码、腾讯、中兴、网易有道C/C++字符串、数组、链表、树等笔试真题精粹
c语言·数据结构·c++·算法·链表
不会编程的小寒27 分钟前
C and C++
java·c语言·c++
不想写笔记1 小时前
C语言 操作符(下)
c语言·笔记
誰能久伴不乏2 小时前
为什么 TCP 服务端重启会出现 “Address already in use”问题解析
linux·服务器·c语言·网络·c++·tcp/ip
VekiSon2 小时前
gdb工具介绍
linux·c语言
黎雁·泠崖2 小时前
VS2022调试通关秘籍:变量跟踪+内存分析+bug定位
c语言·bug
Bigan(安)3 小时前
【奶茶Beta专项】【LVGL9.4源码分析】03-显示框架-display
linux·c语言·mcu·arm·unix
Zsy_0510034 小时前
【数据结构】堆简单介绍、C语言实现堆和堆排序
c语言·数据结构·算法
SongYuLong的博客4 小时前
开源 C 标准库(C Library)
c语言·开发语言·开源
坚持编程的菜鸟4 小时前
模拟实现qsort库函数排序整型和结构体
c语言