本文概述
- 指针中使用的符号
- 声明一个指针
- 指针示例
- 指针程序, 无需使用第三个变量即可交换2个数字
文章图片
指针的优点
1)指针减少了代码并提高了性能, 它用于检索字符串, 树等, 并与数组, 结构和函数一起使用。
2)我们可以使用指针从函数返回多个值。
3)它使你能够访问计算机内存中的任何内存位置。
指针的用法
C ++语言中有许多指针的用法。
1)动态内存分配
在C语言中, 我们可以使用malloc()和calloc()函数(在其中使用指针)动态分配内存。
2)数组, 函数和结构
c语言中的指针广泛用于数组, 函数和结构中。它减少了代码并提高了性能。
指针中使用的符号
符号 | Name | 描述 |
---|---|---|
&(与号) | 地址运算符 | 确定变量的地址。 |
?(星号) | 间接算子 | 访问地址值。 |
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