c语言函数形参没名字,c语言无参函数和有参函数

c函数形参如果没有名字,只有类型,在下面使用的时候,怎么使用

定义的时候确实可以不写形参名字。

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:申请域名、网络空间、营销软件、网站建设、依兰网站维护、网站推广。

你如果学了编译原理的话可以知道函数间是如何传参的(大多语言是通过栈),

c语言是第n个参数先压栈,再压第n-1个,。。。再压第一个。最后修改栈顶指针add esp,8。

当进入函数时都是

push ebp

mov ebp,esp

所以可以这么实现

//VS2010环境

void f(int,int)

{

int a,b;

__asm //这是嵌入汇编关键字,在VC6.0嵌入汇编好像是asm

{

mov eax,[ebp+8]

mov a,eax ;第一个参数

mov eax,[ebp+12]

mov b,eax ;第二个参数

}

printf("%d\t%d\n",a,b);

}

void main()

{

f(7,3);

}

c++函数定义时,形参没有变量名是什么意思

函数定义的时候一定有形参名的

函数声明的时候可以没有形参名

c语言声明函数时如果不写参数名只写参数类型,在子函数中怎么引用这

和写参数名的情况是一样的。 调用时按照参数列表类型,传入对应个数 类型匹配的实参就行。

声明的时候,可以省略形参的参数名,而只保留类型。

即 声明int fun(int , int);

和声明 int fun(int a, int b);

效果是完全一样的 。 调用的时候 都是传入两个整型参数即可。

在C语言中,形参名与实参名到底是一样好,还是不一样好?

名字是否相同并不重要,重要的是类型必须相同。

因为,形参是所在函数的局部变量,所以形参在所在函数中会被多次使用,你需要统筹考虑。

而实参是主调函数的局部变量,是根据实际需要作为参数调用被调函数的,是否调用被调函数并不需要另外考虑实参名称,这是与形参的主要不同点。

请问C语言函数定义中函数首部里的形参名必须有吗?可不可以只写形参类型而不写具体的形参名呢。

可以啊。不过不写名的话就没法直接使用了(可以间接引用,如通过指针)。


当前文章:c语言函数形参没名字,c语言无参函数和有参函数
路径分享:http://ybzwz.com/article/hddpis.html