int (*abc[4])(int a,int b,char x,double u = 55f);赋值和使用
时间: 2023-12-12 22:01:55 浏览: 106
8a55f734-1f3f-4b9b-ae8b-7e494c5a8a1.zip
可以通过如下方式为数组abc的每个元素赋值:
```c++
int func1(int a, int b, char x, double u = 55f) {
// do something
return a + b;
}
int func2(int a, int b, char x, double u = 55f) {
// do something
return a - b;
}
abc[0] = &func1;
abc[1] = &func2;
abc[2] = &func1;
abc[3] = &func2;
```
这样就将4个函数指针分别指向了`func1`和`func2`两个函数。
然后可以通过如下方式调用数组中的函数:
```c++
int result1 = abc[0](1, 2, 'c');
int result2 = abc[1](3, 4, 'd', 66.6);
```
第一行代码调用了`func1`函数,传入参数1、2和字符c,返回值为3。
第二行代码调用了`func2`函数,传入参数3、4、字符d和double类型的66.6,返回值为-1。
阅读全文