网站首页 > 文章中心 > 其它

c语言函数返值类型

作者:小编 更新时间:2023-08-19 13:11:57 浏览量:227人看过

c语言中函数返回值的类型由什么决定?

是由你定义函数时所定义的函数的类型决定的.

也就是说函数是什么类型,返回值就是什么类型.

比如:

c语言函数返值类型-图1

函数定义? int fun(int a,char b).

返回值就是整型.

函数定义? int *fun(int a).

返回值就是基类型为整型的指针.

函数定义? void fun(int a).

无返回值.

简介

在调用函数时,如果需要从被调函数返回一个值供主调函数使用,那么返回值类型必须定义成非 void 型.此时被调函数中必须包含 return 语句,而且 return 后面必须要有返回值,否则就是语法错误.

一个函数中可以有多个 return 语句,但并不是所有的 return 语句都起作用.执行到哪个 return 语句,就是哪个 return 语句起作用,该 return 语句后的其他语句都不会执行.

c语言函数返值类型-图2

c语言函数返回类型默认为什么类型?

函数返回类型是你定义函数时自己决定的,默认为int型

C语言函数格式为:

类型名

类型名就决定了返回类型,如果没有明确写出返回类型的话,默认为int类型.

void是空类型,

void必须要明确写出来才可以,指的是函数不提供返回值,不是默认的.

函数定义

int

fun(int

a)

返回值就是整型

*fun(int

返回值就是整型的指针

void

无返回值

C语言中函数返回类型和函数返回值

函数的返回值通过return语句来执行,即return后的变量或表达式的值,就为该函数的返回值(你可以根据需要自定义返回什么值),而返回值的类型是指该值你想要得到的类型,比如return

a;(a的类型,你在函数体里定义的是int

a;但根据需要,你要的是一个float型的返回值),于是,这样定义一个函数:

float

函数名(参数列表)

{

a;

函数体;

......

return

}

这样,返回值a就变成了float型.

C语言规定,函数返回值的类型由什么决定?

c语言规定,函数返回值的类型是由函数首部定义的类型决定.函数返回值应与首部定义的类型一致,如若不一致,则自动将返回值强制转换为函数首部定义的类型.没有定义类型时默认为int型.

也就是说你的函数是什么类型,返回值就是什么类型.

函数定义 int fun(int a,char b)

函数定义 int *fun(int a)

返回值就是基类型为整型的指针

函数定义 void fun(int a)

扩展资料

函数可以有返回值,只要 return 就可以给出一个,不过常常不用它,有两个原因:

①.、C/C++里返回值是复制出去的,而对于大的对象,复制的代价很高;

于是有了下面这样的函数:

bool GetObj(ObjType obj);

bool Encode(const char* src, char* dest);

用一个参数来代替返回值,而返回值只是指示函数执行是否成功.

返回一个大对象是困难的,但这个困难存在于 C 程序中,而不是 C++ 程序中. C 函数里较少通过返回一个指针来返回对象,因为:

①.、如果指针指向栈变量,毫无疑问,要么不用这个返回值,要么是一个错误;

在C++里直接返回裸指针的话,情况并不会有什么起色,不过 C++ 有智能指针的,通常它们指向堆变量,占用的空间和裸指针一样大.考虑前面第一个函数,写成:

std::auto_ptrObjType GetObj();

返回值如果不要,作为临时变量,会立即被析构,返回的对象被释放;如果需要,就得赋值给另一个智能指针.都说到这里了大家应该明白不用程序员记得,编译器会保证这个对象的释放.

考虑第二个函数,稍微有一点麻烦,因为 auto_ptr 是不能用来持有数组的,不过,在C++的世界里,std::string 几乎总是比 char* 好用:

std::auto_ptrstd::string Encode(const char* src);

最后考虑最麻烦的情况:

bool AssembleObjList(ObjType objList[], size_t length);

C语言函数返回类型

(1)函数自身返回

到底用那种方法,取决于程序员的考虑.

Node* --通过 函数自身返回,返回一个结构指针,指向 Node 型结构.

int -- 通过 函数自身返回,返回一个整型量.

CreateLinkList 是建链表,返回Node* 结构指针

GetElem 获取元素单元,返回Node* 结构指针

InsertLinkList 用 int 表示插入成功或失败,或用 int 表示什么.

这些 都 取决于程序员的考虑. 没有绝对的规定.

以上就是土嘎嘎小编为大家整理的c语言函数返值类型相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章