C语言在同一个源程序文件中,两个函数肚饿名字不可以相同
创新互联公司专注于荔波网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供荔波营销型网站建设,荔波网站制作、荔波网页设计、荔波网站官网定制、小程序开发服务,打造荔波网络公司原创品牌,更为您提供荔波网站排名全网营销落地服务。
C++允许相同,这个叫重载,但是相同名字的函数的参数的个数或者类型必须不同。
如果是C++,有重载机制,不一定会出错(如果两个重名函数的参数列表不相同的话)
如果是C
#include了包含那个库函数的头文件的情况下,再定义一个重名函数,就会出错
就是指函数名相同,比如,int
func()与int
func(int),
C语言里没有函数重载,所以这样写是不行的(C++里是可以的)。
这不是两个函数,这是一个函数,extern "C" int listid(int id, OUT *);
中的extren通知编译器int listid(int id, OUT *)不在本源代码中实现,
"c"通知编译器用C调用方式调用在另外的一个源程序的函数,
C语言默认的调用方式就是C调用 C++就不同了,,所以最好加个"c"
另:调用方式规定了调用的时候输入参数的顺序和函数返回后输入参数占用的空间由调用程序释放还是由函数释放。这东西不一定要太懂,知道用"c"去考虑调用方式就可以了.
参数不同也是可以的,但是执行一定会有错误,而且应该不能出现同名不同参数的的令一个函数。要不连接的时候就找不到正确的函数。