关于调用函数的简单问题

来源:百度知道 编辑:UC知道 时间:2024/05/12 01:01:52
#include<stdio.h>
main()
{
int x=10;
func(x);
printf("%d",x);
}

func(int x)
{
x=20;
}
这个程序的函数的返回值是 10

问题:1: 不是说函数要先定义在使用么?
如果调用的函数写在主函数的下面不是要先进行定义么?
2:上面是例题 肯定没有错的 我还想问 如果调用的函数没有返回值这个函数还有意义不?
后来我对 调用函数进行了 return x; 进行X的值返回 为什么运行程序后的结果还是10;

上面的函数应该这样写
无返回值的时候要声明为“void”
根据你定义的函数其实并不需要参数。就是使用“无参函数”就行了
1.无返回值的情况:
#include<stdio.h>
main()
{
int x=10;
void func(); /*使用前对函数的声明*/
printf("%d",x);
}

void func()
{
x=20;
}
2.有返回值的情况下这样写:
#include<stdio.h>
main()
{
int x=10;
int func();
printf("%d",x);
}

int func()
{
x=20;
return x;
}
调用函数进行了 return x;这并没有能够改变主函数里x的值,所以运行程序后的结果还是10;而func()的值才为20,return x的x是返回到函数func()的

3.调用函数func() :
#include<stdio.h>
main()
{
int x=10;
int func();
printf("%d",func());
printf("%d",x);
}

int func()
{
x=20;
return x;
}
运行结果:20 10

是值传递,所以x的值是不变的,建议你看函数的定义和使用以及函数参数传递的方式。函数是先声明再使用。

1,首先函数要先定义再使用么是对的。其次这个与顺序没关系,当用到这个函数时他会自动调用的。
2,这个函数是你定义的,你要是用它他就有意义,要是