c语言函数返回参数类型 c语言参数和返回值

c语言函数返回类型默认为什么类型?函数返回类型是你定义函数时自己决定的,默认为int型
C语言函数格式为:
类型名
函数名(形参1 , 形参2……)
类型名就决定了返回类型,如果没有明确写出返回类型的话,默认为int类型 。
void是空类型,
void必须要明确写出来才可以,指的是函数不提供返回值,不是默认的 。
比如:
函数定义
int
fun(int
a)
返回值就是整型
函数定义
int
*fun(int
【c语言函数返回参数类型 c语言参数和返回值】a)
返回值就是整型的指针
函数定义
void
fun(int
a)
无返回值
决定C语言中函数返回值类型的是【 】决定C语言中函数返回值类型的是定义函数时在函数首部所指定的类型 。
在C语言中 , 一个标准的函数定义语句块必须包含函数返回值的类型标识符、函数名、形参类型及数量、函数体、返回值表达式 。如果函数返回值类型为
void
(即无返回值) 。
函数定义示例(其中int是函数返回值类型):
int
fun(int
a,
int
b){
return
ab
?
a
:
b;
}
扩展资料
C语言函数类型种类举例介绍:
1、void
空类型,表示该函数无返回值;
2、int
整形,表示该函数返回int整形数值;
3、double
双精度,函数返回双精度数值;
4、char
字符串,函数返回字符串;
5、long
长整型,函数返回长整型数值;
c语言 函数返回值类型怎么用?c语言c语言函数返回参数类型的函数的默认的返回值是int类型的,如果没有定义返回类型c语言函数返回参数类型,则返回类型就是int
只有定义了其它的类型,例如float
add()才是float型的,括号里面参数是什么不影响返回类型
C语言规定,函数返回值的类型由什么决定?c语言规定,函数返回值的类型是由函数首部定义的类型决定 。函数返回值应与首部定义的类型一致,如若不一致,则自动将返回值强制转换为函数首部定义的类型 。没有定义类型时默认为int型 。
也就是说你的函数是什么类型,返回值就是什么类型 。
比如:
函数定义 int fun(int a,char b)
返回值就是整型
函数定义 int *fun(int a)
返回值就是基类型为整型的指针
函数定义 void fun(int a)
无返回值
扩展资料
函数可以有返回值 , 只要 return 就可以给出一个,不过常常不用它,有两个原因:
1、C/C++里返回值是复制出去的,而对于大的对象,复制的代价很高;
2、有些对象是不能复制的,至少编译器不知道怎么复制,比如数组 。
于是有了下面这样的函数:
bool GetObj(ObjType obj);
bool Encode(const char* src, char* dest);
用一个参数来代替返回值,而返回值只是指示函数执行是否成功 。
返回一个大对象是困难的,但这个困难存在于 C 程序中 , 而不是 C++ 程序中 。C 函数里较少通过返回一个指针来返回对象 , 因为:
1、如果指针指向栈变量,毫无疑问,要么不用这个返回值,要么是一个错误;
2、如果指针指向堆变量 , 需要用这个函数的程序员会好好的看文档且足够细心会调用 free,要么就是内存泄漏;
3、如果指针指向 static 变量 , 那么用这个函数的程序员牢牢记住“下次调用这个函数以后,上次的返回值也会跟着变” 。
在C++里直接返回裸指针的话,情况并不会有什么起色,不过 C++ 有智能指针的,通常它们指向堆变量,占用的空间和裸指针一样大 。考虑前面第一个函数,写成:

推荐阅读