指针的用法

大家好,这次是用法系列第二期,给大家介绍指针的作用。

一.用于变量

我举个例子

#include<iostream> 
using namespace std;
int main()
{
	int x=6,y=5; //创建变量x,y
	int* p=&x; //创建指针p并指向x
	cout<<*p<<endl; //输出指针p
	*p=y; //指针指向y
	cout<<*p; //输出指针p
}

我们可以知道,指针指向变量的代码是

变量类型 *指针名 = &变量

这里的变量类型取决于被指向变量的类型取代的,我们可以画个图表示指针的地址

我们可以看到指针创建后指向了x,之后有、又指向了y

二.用于列表

指针不仅可以指向变量,还可以指向列表。我们可以看下列代码

#include<iostream> 
using namespace std;
int main()
{
	int x[6]={1,1,4,5,1,4};
	for(int a=0;a<6;a++)
	{ 
	    int* p=&x[a];
	    cout<<*p<<" ";
	} 
}

输出结果是

1  1  4  5  1  4

当然,我们可以画个图

这些是指针的部分功能,其他功能会在下期发布

  • 10
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C语言中的指针是一个非常重要的概念,它是许多高级特性的基础,如动态内存分配和复杂数据结构。指针是一个变量,它存储了一个内存地址,这个地址指向另一个变量的存储位置。 下面是一些常见的指针用法: 1. 声明指针变量:指针变量的声明需要使用星号(*),例如: ``` int *ptr; char *str; ``` 2. 取地址运算符(&):取地址运算符可以返回一个变量的地址,如: ``` int num = 10; int *ptr = &num; ``` 这里ptr指向了变量num的地址。 3. 解引用运算符(*):解引用运算符可以返回一个指针所指向的变量的值,如: ``` int num = 10; int *ptr = &num; printf("%d\n", *ptr); // 输出10 ``` 4. 指针的算术运算:指针可以进行加减运算,如: ``` int arr[3] = {1, 2, 3}; int *ptr = &arr[0]; ptr++; // 指向arr[1] ptr--; // 指向arr[0] ``` 注意,指针运算的单位是指针类型所占用的字节数。 5. 指针和数组:数组名本身就是一个指针,它指向数组的第一个元素。可以通过指针来访问数组中的元素,如: ``` int arr[3] = {1, 2, 3}; int *ptr = &arr[0]; printf("%d\n", *(ptr+1)); // 输出2 ``` 6. 指针和函数:指针可以作为函数的参数和返回值,如: ``` void swap(int *a, int *b) { int temp = *a; *a = *b; *b = temp; } int main() { int num1 = 10, num2 = 20; swap(&num1, &num2); printf("%d %d\n", num1, num2); // 输出20 10 return 0; } ``` 这里swap函数接收两个指针参数,通过解引用运算符来交换它们所指向的变量的值。 以上是一些常见的指针用法,掌握好指针的使用可以让你更加灵活地处理数据和内存。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值