void指针加减乘除运算
时间: 2023-07-12 21:04:50 浏览: 58
void指针是一种无类型指针,不能直接进行加减乘除运算。因为void指针的大小是未知的,所以不能确定每次增加或减少的字节数。
如果需要对指针进行运算,需要先将void指针转换为具有确定大小的指针类型,然后进行运算。
例如,可以将void指针转换为char指针类型,这样每次增加或减少的就是一个字节,可以进行加减运算。但是乘除运算并没有实际意义,因为指针的乘除运算并不是指针所需要的。
相关问题
使用指针调用来实现加减乘除执行运算
下面是一个使用指针调用实现加减乘除运算的例子:
```c++
#include <iostream>
using namespace std;
void add(int *a, int *b) {
cout << "a + b = " << *a + *b << endl;
}
void sub(int *a, int *b) {
cout << "a - b = " << *a - *b << endl;
}
void mul(int *a, int *b) {
cout << "a * b = " << *a * *b << endl;
}
void div(int *a, int *b) {
if (*b == 0) {
cout << "Divisor cannot be zero!" << endl;
return;
}
cout << "a / b = " << *a / *b << endl;
}
int main() {
int a, b, op;
cout << "Enter two integers: ";
cin >> a >> b;
cout << "Enter operator: 1 for addition, 2 for subtraction, 3 for multiplication, 4 for division" << endl;
cin >> op;
switch (op) {
case 1:
add(&a, &b);
break;
case 2:
sub(&a, &b);
break;
case 3:
mul(&a, &b);
break;
case 4:
div(&a, &b);
break;
default:
cout << "Invalid operator!" << endl;
break;
}
return 0;
}
```
在这个例子中,我们定义了四个函数 add、sub、mul 和 div 分别用于执行加法、减法、乘法和除法运算。这些函数的参数都是指向 int 类型变量的指针。在主函数中,我们输入两个整数和一个操作符,然后根据操作符调用相应的函数。例如,如果操作符是 1,就调用 add 函数,传递给它 a 和 b 的地址。在 add 函数中,我们通过解引用指针来获取 a 和 b 的值,并计算它们的和。最后,我们输出结果。
需要注意的是,在调用函数时,我们需要使用 & 运算符来获取变量的地址,例如 &a 和 &b。在函数内部,我们需要使用 * 运算符来解引用指针,例如 *a 和 *b。
用C语言写一个程序,利用指针自写一个函数,实现加减乘除
好的,以下是一个简单的C语言程序,用指针自写一个函数,实现加减乘除:
```c
#include <stdio.h>
void calculate(int a, int b, char op, int *result) {
switch (op) {
case '+':
*result = a + b;
break;
case '-':
*result = a - b;
break;
case '*':
*result = a * b;
break;
case '/':
if (b == 0) {
printf("Error: division by zero!\n");
return;
}
*result = a / b;
break;
default:
printf("Error: invalid operator!\n");
return;
}
}
int main() {
int a, b, result;
char op;
printf("Enter an expression: ");
scanf("%d %c %d", &a, &op, &b);
calculate(a, b, op, &result);
printf("Result: %d\n", result);
return 0;
}
```
在该程序中,我们定义了一个 `calculate` 函数,它接受三个参数:两个整数 `a` 和 `b`,以及一个操作符 `op`,并将计算结果存储在指向 `result` 的指针中。
在 `main` 函数中,我们通过调用 `calculate` 函数来执行加减乘除操作,并将结果输出到屏幕上。
注意,在除法运算中,我们需要检查被除数是否为零,以避免出现除以零的错误。