【C++ Primer Plus学习记录】函数的基本知识

要使用C++函数,必须完成如下工作:

提供函数定义

提供函数原型

调用函数

1.定义函数

可以将函数分为两类:没有返回值的函数和有返回值的函数。

没有返回值的函数被称为void函数,其通用格式如下:

cpp 复制代码
void functionName(parameterList)//parameterList指定了传递给函数的参数类型和数量
{
   statement(s);
   return;
}

有返回值的函数将生成一个值,并将它返回给调用函数。这种函数的类型被声明为返回值的类型,其通用格式如下:

cpp 复制代码
typeName functionName(parameterList)
{
   statements;
   return value;
}

对于有返回值的函数,必须使用返回语句,以便将值返回给调用函数。值本身可以是常量、变量,也可以是表达式,只是其结果的类型必须为typeName类型或者可以被转换为typeName类型。

2.函数原型和函数调用

(1)为什么需要原型

原型描述了函数到编译器的接口,也就是说,它将函数返回值的类型(如果有的话)以及参数的类型和数量告诉编译器。

(2)原型的语法

复制函数定义中的函数头。

(3)原型的功能

编译器正确处理函数返回值;

编译器检查使用的参数数目是否正确;

编译器检查使用的参数类型是否正确。如果不正确,则转换为正确的类型(如果可能的话)。

相关推荐
铭哥的编程日记3 分钟前
【标准项目】C++基于正倒排索引的Boost搜索引擎
c++·搜索引擎
9***Y489 分钟前
Java开发工具IntelliJ IDEA技巧
java·开发语言·intellij-idea
码力码力我爱你19 分钟前
C++性能基准测试
开发语言·c++
张人玉21 分钟前
C#WPF——MVVM框架编写管理系统所遇到的问题
开发语言·c#·wpf·mvvm框架
j***121524 分钟前
网络爬虫学习:应用selenium获取Edge浏览器版本号,自动下载对应版本msedgedriver,确保Edge浏览器顺利打开。
爬虫·学习·selenium
java1234_小锋40 分钟前
讲讲Mybatis的一级、二级缓存?
java·开发语言·mybatis
z***I3941 小时前
JavaScript原型链
开发语言·前端·javascript
x***58701 小时前
JavaScript语音识别开发
开发语言·javascript·语音识别
小年糕是糕手1 小时前
【C++】C++入门 -- 输入&输出、缺省参数
c语言·开发语言·数据结构·c++·算法·leetcode·排序算法
✎ ﹏梦醒͜ღ҉繁华落℘2 小时前
freeRTOS学习笔记(十四)--内存
笔记·学习