C语言中 * 的三种含义

C语言中 * 的三种含义

1.相乘:符号两边都是两个变量。 例:x*y;

x=2;y=3;
z=x*y=2*3=6;

2.指针类型:左边是类型。例:int*x;(定义了一个名字叫x的变量,能够存放int数据类型的地址)

int *x;
(定义了指针变量 x ,x 是指向整数类型的指针)

3.解引用操作(间接访问操作):左边没啥,右边是一个指针类型变量。例如:y= *x; 如果x是一个已经定义好的指针变量,则(*x)表示以y的内容为地址的变量

y= *x;(指针x指向的值赋值给y(此处*为指向运算符,*x表示指针x所指向的变量的存储单元)

应用实例

交换两个整数

#include<stdio.h>
#include<stdlib.h>

void Swap(int *x, int *y) {
	int tmp = *x;
	*x = *y;
	*y = tmp;
}
int main() {
	int num1 = 0;
	int num2 = 0;
	printf("请输入num1 num2的值:");
	scanf("%d %d", &num1, &num2);
	Swap(&num1, &num2);
	printf("num1=%d\nnum2=%d\n", num1, num2);
	system("pause");
	return 0;
}

运行结果
在这里插入图片描述

代码简单分析:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值