[Powered by Google Translate] CHRIS GERBER:函数是一个系列内的步骤 更大的程序,通常被称为 多次和从多个中的其他位置 该方案。 当创建一个C函数,其中一项规定是 指定一个返回值的类型。 最简单的情况是一个的情况下,调用 代码还没有有关的函数的结果。 这可能的情况下,当我们打印数据 用户的显示,使用printf。 在这种情况下,我们可以声明一个返回值 void类型。 使用void简单地告诉编译器,没有 值将被退回。 让我们来看看这是什么看起来像。 让我们说,我们有一个功能叫做say_hello 它有一个参数。 我们将通过一个人的名字,它会显示一个问候 在屏幕上。 该名称将char *类型。 我们将指定为参数。 我的应用程序并不需要知道什么是印刷或者如果它 在打印。 因此,返回值类型为void。 此功能可以打印到屏幕上的命令是 printf(“请你好,%S \ n “,名称); 问候语将被显示和控制将被传递 备份到调用代码。 有一点要注意的是,当返回值类型为void, 你不需要回报 表中的功能。 如果您选择包括1,不包括返回值 作为一个参数。 在某些情况下,是有意义的返回一个 从一个函数值。 比方说,我们是写一个函数调用add_floats。 我们将它传递两个参数,花车, 被称为第一和第二。 它会告诉我们这些彩车是什么总和。 我们知道,如果我们添加了两个漂浮起来,结果 将持股量。 鉴于此,我们选择了一个返回类型为浮动。 此功能将执行计算并返回 在这样的语句返回值 第一+第二;。 当控制传递回调用代码, 得到的值是现在的代码。 我们可以将这个值,如:float结果 add_floats(3.14,1.62 。); 现在,在这种情况下,结果将包含值4.76。 在此提醒您,浮点值是不精确的。 所以,如果这是一个财务计算,用美元和 美分,我们可能要考虑一个精确的数据类型,如 int和执行便士计算。 另一种情况下,我们将要返回一个值从 作用是当我们想知道,如果一个函数是 成功的。 如果没有成功,我们可能还需要知道什么类型的 发生错误。 比方说,我们正在试图打开一个文件在磁盘上的数 中的字符数。 如果文件不能打开,我们希望能够停止和 告诉用户有关的问题。 我们会打电话给我们的的功能count_file_chars和会 需要一个参数。 我们将通过在使用的文件名 字符*文件名。 此功能可能是这个样子。 在这个例子中,我们希望返回的数 为0,或更多。 这使得我们的负整数 使用为定点价值观。 一个哨兵值仅仅是一个特殊值,它不 合法的数据,但传达的信息。 在这里,如果我返回-1调用代码,我 实际发送的邮件出现了一个错误,而 试图访问该文件。 然后,我可以检查返回值来确定,如果我 函数调用成功。 如果这个数字是0或更大的,我也知道 在该文件中的字符数。 然而,如果数字为小于0,我可以简单地 打印出了问题发生。 一个权衡考虑的是,保留所有 负值为定点值,假设这是一个 32位的整数,我已经基本上带走了周围 2亿可能的返回值。 返回值类型是最重要的元素之一 函数调用。 希望这简短的概述,帮助你想想 三种主要类型:无效,结果值和定点值, 而当每个三个可能会对 适当的在你的代码中。 感谢收看。