神秘的C语法

神秘的C语法,第1张

概述我试图通过并理解一个使用内在速度的卡方程序.在这个过程中,我遇到了一行我无法理解的代码. 我试过检查教科书,谷歌和搜索这个网站没有运气.我认为问题在于,在不了解语法的情况下,我无法用术语或关键词充分描述搜索以获得任何相关结果. 这是我不理解的代码行: float (*chi2_float)(const int, const float*, const float*) = chi2_baseline 我试图通过并理解一个使用内在速度的卡方程序.在这个过程中,我遇到了一行我无法理解的代码.

我试过检查教科书,谷歌和搜索这个网站没有运气.我认为问题在于,在不了解语法的情况下,我无法用术语或关键词充分描述搜索以获得任何相关结果.

这是我不理解的代码行:

float (*chi2_float)(const int,const float*,const float*) = chi2_baseline_float;

以下是包含它的函数:

float chi2_float(const int dim,const float* const x,const float* const y) {    float (*chi2_float)(const int,const float*) = chi2_baseline_float;#ifdef __SSE__    chi2_float = chi2_intrinsic_float;#endif    return chi2_float(dim,x,y);}

在我看来,它可能是声明和定义一个函数,当我注释掉该行并重新编译时,我得到:

错误C2659:’=’:作为左 *** 作数运行
在线
    chi2_float = chi2_intrinsic_float;

如果需要,我可以发送包含此函数的.h文件,但它正如您对参数所期望的那样.

任何帮助将不胜感激.

解决方法 有问题的行是根据__SSE__的值将类型函数指针的变量设置为另外两个函数之一.

然后它调用chi2_float指向的函数并返回结果.

总结

以上是内存溢出为你收集整理的神秘的C语法全部内容,希望文章能够帮你解决神秘的C语法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1223264.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存