gpt4 book ai didi

c - 为什么这个double类型变量作为函数参数传递时默认为int?

转载 作者:行者123 更新时间:2023-12-04 11:24:56 24 4
gpt4 key购买 nike

我正在学习 C 并试图帮助调试 friend 的代码。他在全局范围内定义函数参数,然后像这样将它们传递给函数 def:

#include <stdio.h>

double x;


double myfunc(x){
return x;
}

void main(){

}

我知道这是错误的,但不知道为什么会出现以下错误:

main.c:14:8: warning: type of ‘x’ defaults to ‘int’ [-Wimplicit-int] 

谁能帮我理解计算机是如何解释这段代码的?

最佳答案

He was defining his function parameters in the global scope

不,他没有。

全局x与函数的参数x无关。

前者是全局 double,后者是函数的局部变量,正如编译器警告的那样,“默认为 int ".

I get this is wrong

没有错,但不可能。

关于c - 为什么这个double类型变量作为函数参数传递时默认为int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61274974/

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