c++中int (*s[10])(int) 表示的是什么?
作者:野牛程序员:2023-07-15 11:34:41 C++阅读 2800
      在C++中,int (*s[10])(int) 表示一个包含 10 个元素的数组 s,其中每个元素都是指向函数的指针,该函数接受一个 int 类型的参数并返回一个 int 类型的值。
换句话说,s 是一个指针数组,每个指针指向一个函数,该函数接受一个整数参数并返回一个整数值。
以下是一个示例,展示如何声明和使用这种类型的数组:
#include <iostream>
int addOne(int num) {
    return num + 1;
}
int multiplyByTwo(int num) {
    return num * 2;
}
int main() {
    int (*s[10])(int); // 声明包含 10 个函数指针的数组
    s[0] = addOne; // 将第一个元素指向 addOne 函数
    s[1] = multiplyByTwo; // 将第二个元素指向 multiplyByTwo 函数
    int result1 = s[0](5); // 调用 addOne 函数,传递参数 5
    int result2 = s[1](3); // 调用 multiplyByTwo 函数,传递参数 3
    std::cout << "Result 1: " << result1 << std::endl; // 输出:Result 1: 6
    std::cout << "Result 2: " << result2 << std::endl; // 输出:Result 2: 6
    return 0;
}在这个示例中,s[0] 是一个指向 addOne 函数的指针,s[1] 是一个指向 multiplyByTwo 函数的指针。然后,我们通过 s[0](5) 和 s[1](3) 分别调用这两个函数,并打印出结果。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
        
- 上一篇:c++简述数组与指针的区别?
- 下一篇:c++将程序跳转到指定内存地址
