c语言中主函数中定义的变量,调用函数里还需要再定义吗?

如题所述

C语言中主函数中定义的变量只能在主函数中使用,所以你还得再定义一个变量。
当然,捏可以把主函数中定义的这个变量传递给被调用的函数作为参数。
例如
void fun(int x)
{
}
main()
{
int num=9;
fun(9);
}
但是如果你要在被调用函数中使用这个变量例如
fun()
{
num++;
}
像这样,就是错的,编译器会报错,main中定义的变量是局部变量,只能在main中使用。
你可以在main外部定义一个变量,这样在被调用函数中也就可以使用了。
温馨提示:内容为网友见解,仅供参考
无其他回答

c语言中主函数中定义的变量,调用函数里还需要再定义吗?
C语言中主函数中定义的变量只能在主函数中使用,所以你还得再定义一个变量。当然,捏可以把主函数中定义的这个变量传递给被调用的函数作为参数。例如 void fun(int x){ } main(){ int num=9;fun(9);} 但是如果你要在被调用函数中使用这个变量例如 fun(){ num++;} 像这样,就是错的,编译...

C语言中为什么调用函数时不需要加int,void,char,double这些呢?
C语言中程序在运行的时候,首先是找到主函数运行的。其余的函数都是在被调用的时候才会运行。那么在被调用之前,就必须要求知道这个函数的具体情况,包括函数返回值的类型,函数名,函数的参数等等,这个叫函数的声明。也就是在调用这个函数时,已经知道了函数返回值的类型,真正调用的时候当然就不用加相关...

C语言中如何把结构体变量定义在主函数内,再调用一个自定义输入函数和输...
可以在外部定义结构体类型,然后在主函数内部定义该类型的变量。在输入输出函数调用时,以结构体变量指针做为参数传递。参考代码如下:include <stdio.h>struct test{ int a;};\/\/定义结构体类型struct test。void input(struct test* p)\/\/输入函数,以指针作为参数。{ scanf("%d",&p->a);}...

C语言中的函数,是不是函数定义和函数调用必须有,而函数说明不一定必须...
那么就需要你自己去定义和调用了,如果函数的定义是在函数调用的前面,那么就不需要函数声明,反之就需要函数声明,如果你在源文件中定义了一个函数,但没有调用,也没有关系的,就好比,你东西买好了,但不一定要现在就用,

c语言中函数中还可以再定义函数吗
不可以,即使主函数中也不可以,C语言只允许在函数中声明和嵌套调用。C语言中是不允许作嵌套的函数定义。因此程序中各个函数之间是平行的,不存在上一级函数和下一级函数的问题,这样是为了简化C语言编译器的逻辑性。

函数的定义和调用可以嵌套吗
以c语言为例,其函数的定义不能嵌套,但是调用可以嵌套。函数不能嵌套定义是由于语法不支持造成在函数定义的内部不能定义函数。C语言中函数的定义都是相互平行、相互独立的,也就是说在函数定义时,函数体内不能包含另一个函数的定义,即函数不能嵌套定义,但可以嵌套调用。C语言是一门面向过程的计算机...

...我调用了一个函数后原来在主函数中的一个变量值变化了,不知道怎么...
肯定是调用函数中某个变量使用了与主函数中变量一样的地址。或者,使用了相同的变量。解决方法:在函数中将该变量重新定义一下。

C语言中,main函数内定义的变量在整个程序范围内都有效吗?
不是,对在其它函数内部定义的中转变量不起作用。如果要达到这个效果,可以使用宏定义,定义全局变量。

为什么在写单片机程序的时候,主函数声明的变量无效?
变量定义放错位置了,c语言要求变量的定义在赋值或有实际意义的语句之前,你放在调用setting()函数之后肯定是错的。C++才支持随意为之定义。

C语言的main函数中可否再定义函数?
绝对不可以,可以的只是嵌套调用 楼上是奇才

相似回答