首页 新闻 会员 周边 捐助

C语言指针使用

0
悬赏园豆:5 [待解决问题]

C语言的灵魂是指针,但是我需要怎么才能搞懂什么情况下才使用指针,什么情况下使用其它类型?

时间完全不够用啊的主页 时间完全不够用啊 | 初学一级 | 园豆:158
提问于:2023-12-21 15:20
< >
分享
所有回答(5)
2

一个典型的场景就是用函数修改变量的值:

include <stdio.h>

int exchange(int *x, int *y)
{
int temp = *x;
*x = *y;
*y = temp;
}

int main()
{
int a = 1;
int b = 2;
exchange(&a, &b);
printf("a = %d, b = %d", a, b);
}
这里定义的exchange函数必须要用指针作为参数,也就是修改目标的本身,而不是修改他们的复制

FlyingF1sh | 园豆:202 (菜鸟二级) | 2023-12-22 15:54
0

两种情况:
1)当需要动态分配内存时,需要用指针去引用(指向)新分配的内存(地址),比如动态长度的数组。
2)你传递一个变量给函数,希望通过函数改变这个变量的值时,需要用指针。

yswift | 园豆:202 (菜鸟二级) | 2023-12-22 20:10
1

可以看看这个,挺详细的。
https://www.toymoban.com/diary/problem/626.html

Daijn | 园豆:204 (菜鸟二级) | 2023-12-28 11:15
0

需要操作内存时 一般用指针。 内存的寻址 需要使用指针。

threegates | 园豆:402 (菜鸟二级) | 2023-12-29 09:01
0

这个看需求,功能的实现也可以避免使用指针,比如多功能存在共同特性的时间窗空监测,但是由于功能的不同,时间限值、保护阈值都不同,那就可以使用指针的形式完成模块函数的封装。内存的申请等待也都是应用场景,当然,非必要不使用指针,具体看应用场景与行业要求

Wx120 | 园豆:252 (菜鸟二级) | 2024-10-14 09:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册