本文概述
C ++语言中的指针是变量, 也称为定位器或指示符, 它指向值的地址。
指针的优点
1)指针减少了代码并提高了性能, 它用于检索字符串, 树等, 并与数组, 结构和函数一起使用。
2)我们可以使用指针从函数返回多个值。
3)它使你能够访问计算机内存中的任何内存位置。
指针的用法
C ++语言中有许多指针的用法。
1)动态内存分配
在C语言中, 我们可以使用malloc()和calloc()函数(在其中使用指针)动态分配内存。
2)数组, 函数和结构
c语言中的指针广泛用于数组, 函数和结构中。它减少了代码并提高了性能。
指针中使用的符号
符号 | Name | 描述 |
---|---|---|
&(与号) | 地址运算符 | 确定变量的地址。 |
∗(星号) | 间接算子 | 访问地址值。 |
声明一个指针
可以使用∗(星号)声明C ++语言中的指针。
int ∗ a; //pointer to int
char ∗ c; //pointer to char
指针示例
让我们看一下使用指针打印地址和值的简单示例。
#include <iostream>
using namespace std;
int main()
{
int number=30;
int ∗ p;
p=&number;//stores the address of number variable
cout<<"Address of number variable is:"<<&number<<endl;
cout<<"Address of p variable is:"<<p<<endl;
cout<<"Value of p variable is:"<<*p<<endl;
return 0;
}
输出:
Address of number variable is:0x7ffccc8724c4
Address of p variable is:0x7ffccc8724c4
Value of p variable is:30
指针程序, 无需使用第三个变量即可交换2个数字
#include <iostream>
using namespace std;
int main()
{
int a=20, b=10, ∗p1=&a, ∗p2=&b;
cout<<"Before swap: ∗p1="<<∗p1<<" ∗p2="<<∗p2<<endl;
∗p1=∗p1+∗p2;
∗p2=∗p1-∗p2;
∗p1=∗p1-∗p2;
cout<<"After swap: ∗p1="<<∗p1<<" ∗p2="<<∗p2<<endl;
return 0;
}
输出:
Before swap: ∗p1=20 ∗p2=10
After swap: ∗p1=10 ∗p2=20
评论前必须登录!
注册