十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
c语言不支持函数重载,因此要想使一个函数定义成许多不同的数据类型,方法1:使用楼上所说的void强转法。方法2:使用宏。注意,无论如何函数名不能定义一样。
创新互联建站坚信:善待客户,将会成为终身客户。我们能坚持多年,是因为我们一直可值得信赖。我们从不忽悠初访客户,我们用心做好本职工作,不忘初心,方得始终。10年网站建设经验创新互联建站是成都老牌网站营销服务商,为您提供网站设计制作、成都网站制作、网站设计、H5高端网站建设、网站制作、成都品牌网站建设、小程序设计服务,给众多知名企业提供过好品质的建站服务。
比如定义一个返回最大值的函数,支持int, short, float, double……等类型。
首先定义宏:
#define COM(TYPE) TYPE compare_##TYPE(TYPE a, TYPE b) \
{\
return (a b)? a : b;\
}
然后使用COM(类型)就能定义该类型的函数:
COM(float)
COM(int)
……
后面你就可以使用compare_int(),compare_float()了
如C语言中:
int max(int x,int y)
{
return(xyx:y;);
}
就是一段比较两数大小的函数,函数有参数与返回值。C++程序设计中的函数可以分为两类:带参数的函数和不带参数的函数。这两种参数的声明、定义也不一样。
带有(一个)参数的函数的声明:
类型名标示符+函数名+(类型标示符+参数)
{
}
不带参数的函数的声明:
void+函数名( )
{
}
花括号内为函数体。
带参数的函数有返回值,不带参数的没有返回值。
C++中函数的调用:函数必须声明后才可以被调用。调用格式为:函数名(实参)调用时函数名后的小括号中的实参必须和声明函数时的函数括号中的形参个数相同。有返回值的函数可以进行计算,也可以做为右值进行赋值。
C语言中的部分函数:
main(主函数)
max(求最大数的函数)
scanf(输入函数)
printf(输出函数)
void:
中文翻译为“无类型”。常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明。
void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。
Int:
int是将一个数值向下取整为最接近的整数的函数。INT是数据库中常用函数中的取整函数,常用来判别一个数能否被另一个数整除。
在编程语言(C、C++、C#、Java等)中,常用于定义整数类型变量的标识符。
扩展资料:
void关键字的使用规则:
规则一:如果函数没有返回值,那么应声明为void类型。
在C语言中,凡不加返回值类型限定的函数,就会被编译器作为返回整型值处理。但是许多程序员却误以为其为void类型。
规则二:如果函数无参数,那么应声明其参数为void。
规则三:小心使用void指针类型
按照ANSI(American National Standards Institute)标准,不能对void指针进行算法操作。
规则四:如果函数的参数可以是任意类型指针,那么应声明其参数为void *
典型的如内存操作函数memcpy和memset的函数原型分别为:
void * memcpy(void *dest, const void *src,size_tlen);
void * memset ( void * buffer, int c, size_t num );
规则五:void不能代表一个真实的变量
参考资料:百度百科-void
百度百科-int