Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 传递函数参数和无返回语句_C_Function - Fatal编程技术网

C 传递函数参数和无返回语句

C 传递函数参数和无返回语句,c,function,C,Function,它仍然将2 3 5作为输出。。因为我们没有return语句final语句c=0未初始化。。它应该给出2 3 0,但它只给出2 3 5。这是未定义的行为,任何事情都可能发生,你不能依赖它 可能发生的情况是,在函数add()中,计算c的值,并将其留在堆栈中,在printf()调用中,打印堆栈的特定地址中的内容。同样,你不能依赖未定义的行为。这是未定义的行为,任何事情都可能发生,你不能依赖它 可能发生的情况是,在函数add()中,计算c的值,并将其留在堆栈中,在printf()调用中,打印堆栈的特定地

它仍然将
2 3 5
作为输出。。因为我们没有
return
语句final语句
c=0
未初始化。。它应该给出
2 3 0
,但它只给出
2 3 5

这是未定义的行为,任何事情都可能发生,你不能依赖它


可能发生的情况是,在函数
add()
中,计算
c
的值,并将其留在堆栈中,在
printf()
调用中,打印堆栈的特定地址中的内容。同样,你不能依赖未定义的行为。

这是未定义的行为,任何事情都可能发生,你不能依赖它


可能发生的情况是,在函数
add()
中,计算
c
的值,并将其留在堆栈中,在
printf()
调用中,打印堆栈的特定地址中的内容。同样,您不能依赖未定义的行为。

这是一个非常好的问题

在函数add()中 表情

#include<stdio.h>

int add(int,int);

main()
{
      int a=2,b=3;
      printf("%d %d %d",a,b,add(a,b));
      getch();
}

int add(int a,int b)
{
     int c;
     c=a+b;
     c=0;     
}
评估 在此表达式中,必须首先计算右侧。 它返回a+b的值,该值存储在返回寄存器中,该值最终存储在c中

在下一个表达式中

c=a+b;
它只是将0的值初始化为c。 它不需要返回任何值。
所以返回寄存器的值仍然是5。

这是一个非常好的问题

在函数add()中 表情

#include<stdio.h>

int add(int,int);

main()
{
      int a=2,b=3;
      printf("%d %d %d",a,b,add(a,b));
      getch();
}

int add(int a,int b)
{
     int c;
     c=a+b;
     c=0;     
}
评估 在此表达式中,必须首先计算右侧。 它返回a+b的值,该值存储在返回寄存器中,该值最终存储在c中

在下一个表达式中

c=a+b;
它只是将0的值初始化为c。 它不需要返回任何值。
因此返回寄存器的值仍然是5。

对此进行了解释。解释一下。非常感谢。。。。现在我不再有这种怀疑了再次感谢AkshayNo问题。如果我的回答对你有帮助,请接受:)非常感谢。。。。现在我不再有这种怀疑了再次感谢AkshayNo问题。如果我的回答对你有帮助,请接受:)