C++语言之指针

编程入门 行业动态 更新时间:2024-10-23 01:58:50

C++语言之<a href=https://www.elefans.com/category/jswz/34/1768268.html style=指针"/>

C++语言之指针

C++中的指针是一个变量,其值为另一个变量的地址。 指针变量声明需要使用星号(*),而取地址运算符&用于获取变量的地址。指针有许多用途,包括动态分配内存、在函数之间传递参数以及访问数组和字符串。下面会介绍指针。


目录

1.常见的指针操作

1.1 定义指针变量

1.2 获取变量的地址

1.3 解引用指针

1.4 动态内存分配

1.5 释放内存

2.指针和数组

3.指针与函数

4.例题


1.常见的指针操作

1.1 定义指针变量

定义一个指针变量需要使用星号(*)。

格式如下:

类型说明符 *变量名;

例如:

int *ptr;

这将定义一个名为ptr的指针变量,它可以指向一个整数值。

1.2 获取变量的地址

获取变量的地址需要使用取地址运算符&。

例如:

int var = 5; int *ptr = &var;

这将把var的地址存储在ptr指针变量中。

1.3 解引用指针

解引用指针意味着访问指针所指向的变量,需要使用间接运算符(*).

例如:

int var = 5;
int *ptr = &var;// 解引用ptr指针并给变量赋值
*ptr = 10;

现在var的值为10,因为ptr指向var并通过解引用指针修改了它的值。

注意:指针变量直接存储的是内存地址(不加“*”的),间接存储的才是存储类型的值(加了“*”的)。

1.4 动态内存分配

动态内存分配是指在运行时分配内存,需要使用new运算符。

例如:

int *ptr = new int;

这将在堆上分配一块大小为sizeof(int)的内存,并返回其地址。

1.5 释放内存

可以使用delete运算符释放内存。

例如:

delete ptr;

2.指针和数组

数组名本质上是一个指针,它指向数组的第一个元素,可以使用指针访问数组元素

例如:

int arr[5] = {1, 2, 3, 4, 5};
int *ptr = arr;// 访问数组元素
cout << ptr[0] << endl;  // 输出1
cout << ptr[1] << endl;  // 输出2
3.指针和函数

3.指针与函数

指针可以用于在函数之间传递参数,例如:

void swap(int *a, int *b) {int temp = *a;*a = *b;*b = temp;
}int main() {int x = 5, y = 10;swap(&x, &y);cout << x << " " << y << endl;  // 输出10 5
}

在swap函数中,a和b分别是指向x和y的指针。通过解引用指针可以交换它们的值。在主函数中,使用取地址运算符&将x和y的地址传递给swap函数。

4.例题

【题目描述】

已知每个月份的英文单词如下,要求创建一个指针数组,数组中的每个指针指向一个月份的英文字符串,要求根据输入的月份数字输出相应的英文单词

1月 January 

2月 February

3月 March

4月 April

5月 May

6月 June

7月 July

8月 Aguest

9月 September

10月 October

11月 November

12月 December

【输入】

第一行输入t表示t个测试实例

接着每行输入一个月份的数字

依次输入t行

【输出】

依次输出月份数字相应的英文单词

【输入样例】

3

5

7

2

【输出样例】

May

July

February

#include <iostream>
using namespace std;int main()
{const char* pmonth[12] = {"January","February","March","April","May","June","July","Aguest","September","October","November","December"};int t;int ch;cin >> t;for (int i = 0; i < t; i++){cin >> ch;if (ch <= 12 && ch >= 1){cout << pmonth[ch - 1] << endl;}elsecout << "error" << endl;}return 0;
}

创作不易,白嫖不好,各位的支持和认可,就是我创作的最大动力,如果喜欢我的文章,给个关注吧!

冰焰狼 | 文

如果本篇博客有任何错误,请批评指教,不胜感激 !

更多推荐

C++语言之指针

本文发布于:2024-03-04 10:26:38,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1709005.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:指针   语言

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!