首页 > 代码库 > C语言中和指针相关的四道题目
C语言中和指针相关的四道题目
1.
void fun (int *x , int *y) {
printf("%d, %d", *x, *y) ;
*x = 3;
*y = 4;
}
main()
{
int x = 1, y = 2
fun(&y, &x);
printf("%d, %d", x, y);
}
结果
2, 1
4, 3
注意main在调用fun函数时, y 和x故意写颠倒了。
--------------------------------------------------------------
2.
#include <stdio.h>
void swap(int *p1, int *p2)
{
int temp;
temp = *p1;
*p1 = *p2;
*p2 = temp;
}
main()
{
int a, b;
int * p1 = &a, *p2 = &b;
scanf(%d %d, p1, p2);
swap(p1, p2);
prinf("%d, %d", *p1, *p2);
}
如果在控制台输入 2 和 5
则输出结果为
5, 2
原因: 在调用swap函数时使用了职称,所以在swap函数内部对p1,p2 所引用的内容值的修改,会影响外面的a和b的值。
C语言中和指针相关的四道题目
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。