gpt4 book ai didi

c - int(*function)(int,int) 和 int*function(int,int) 的区别

转载 作者:太空宇宙 更新时间:2023-11-04 05:27:27 27 4
gpt4 key购买 nike

我正在研究 C 的指针,从 Deitel 的书中我不明白 int(*function)(int,int)int*function(int, int) 表示函数时。

最佳答案

C 中读取类型的经验法则:

  1. 从您定义的标识符开始

    • int(*function)(int,int) 中,“function 是一个...”

    • int*function(int,int) 中,“function 是一个...”

  2. 向右阅读,直到到达行尾或右括号

    • int(*function)(int,int) 中,您立即命中了括号。

    • int*function(int,int) 中,“...采用 intint 两个参数的函数>...”

  3. 从你开始的地方往左读

    • int(*function)(int,int) 中,“...指向...的指针”

    • int*function(int,int) 中,“...返回指向 int 的指针。”

  4. 如果您因为碰到右括号而停止,请再次执行步骤 2 和 3,从右括号开始并返回到其对应的左括号。

    • int(*function)(int,int) 中,到目前为止我们只读取了 (*function),所以我们继续:“... function它采用 intint 类型的参数...”并备份,“...返回 int

    • 我们到达了另一个行的末尾。

综合起来:

int(*function)(int,int)

function 是一个指向函数的指针,该函数接受两个 intint 类型的参数,返回一个 int

int*function(int,int)

function 是一个函数,它接受两个类型为 intint 的参数,并返回指向 int 的指针.

关于c - int(*function)(int,int) 和 int*function(int,int) 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20029686/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com