【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)原型的功能

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

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

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

相关推荐
程序员-King.3 分钟前
【ROS1】Noetic 开发工作流程与常用命令
c++·ubuntu·ros
FRing038 分钟前
JavaScript入门到精通二十六(变量提升、函数剩余参数、展开运算符、ES6箭头函数)
开发语言·前端·javascript·es6·箭头函数
云深麋鹿11 分钟前
C++ | 基于红黑树实现mymap与myset
开发语言·c++
薛定e的猫咪20 分钟前
(ICLR 2026)DF-META:面向 FJSP 的无导数元学习实例自适应调度
人工智能·深度学习·学习·算法·机器学习
weixin_417396831 小时前
桌面云终端PXE启动失败怎么排查?从DHCP Option到镜像下发
开发语言·前端·php·技术·酒店·综合布线·弱电
某不知名網友2 小时前
ROS2进阶:服务通信、自定义SRV接口、参数服务器与基于服务的参数通信详解
java·开发语言·microsoft
傲世仙尊2 小时前
string增删查改-insert-erase-replace与find加substr组合技
c++
java_nnnn2 小时前
LeetCode刷题滑动窗口(水果成篮+找到字符串中所有字母的异位词)Java
java·开发语言·leetcode
qetfw2 小时前
Bash 字符串处理:参数展开、序列与脚本执行方式
linux·开发语言·chrome·bash
小羊没烦恼!2 小时前
异步编程:线程概述及使用
java·开发语言·mysql·算法·c#