gpt4 book ai didi

c++ - 在 main 之前调用的预定义函数

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:02:12 24 4
gpt4 key购买 nike

我不明白如何以及何时调用此预定义函数 sqrt(),如果我定义自己的函数 sqrt() 也是如此> 它显示了一个编译错误,所以为什么预定义函数调用有效而对用户定义函数的调用失败,尽管这两个代码都位于我的可执行文件的 (TEXT) 部分。

#include<stdio.h>

int x = sqrt(16);

int main()
{

printf(" x = %d\n",x);
return 0;
}

输出:

x = 4;

当我调用我定义的 sqrt() 函数时出现以下错误,但当我使用预定义函数时不会出现相同的错误

错误:初始化元素不是常量

最佳答案

如果您定义自己的 sqrt 函数,它将与 math.h 中已经定义的函数发生冲突,从而导致错误。

进行调用是因为在进入 main 之前初始化了全局变量(或者更确切地说,命名空间范围变量) - 即 x 的初始化。

关于c++ - 在 main 之前调用的预定义函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21675157/

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