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

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

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

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

相关推荐
S***q1921 天前
Rust在系统工具中的内存安全给代码上了三道保险锁。但正是这种“编译期的严苛”,换来了运行时的安心。比如这段代码:
开发语言·后端·rust
打点计时器1 天前
matlab 解决wfdb工具使用本地数据集报错
开发语言·matlab
zmzb01031 天前
C++课后习题训练记录Day38
开发语言·c++
獭.獭.1 天前
C++ -- STL【string的使用】
c++·string·auto
Freshman小白1 天前
《生活英语读写》2025学堂在线网课答案(全部作业题)
爬虫·学习·答案
夏霞1 天前
c# 使用vs code 创建.net8.0以及.net6.0 webApi项目的教程
开发语言·c#·.net
福尔摩斯张1 天前
Linux进程间通信(IPC)机制深度解析与实践指南
linux·运维·服务器·数据结构·c++·算法
T***u3331 天前
Rust在Web中的 Web框架
开发语言·后端·rust
bubiyoushang8881 天前
MATLAB实现机械臂GUI仿真系统
开发语言·matlab
听风吟丶1 天前
Java 高级多线程编程:从虚拟线程到结构化并发的实战演进
java·开发语言