C++知识点总结(13):函数

一、定义

函数,指可以实现某个功能,可以重复使用的一段代码。不同的函数之间相互独立,即函数之间的功能互不影响(互相的代码)。

二、结构

1. 定义

复制代码
返回值类型 函数名(形参1, 形参2, 形参3...形参n)
{
    ...
    return 值;
}

2. 调用

复制代码
函数名(实参1, 实参2, 实参3, ... 实参n)

三、传入参数

地址

cpp 复制代码
void swap(int &a, int &b)

多维数组

cpp 复制代码
void swap(int a[][105], int b[][105])

之所以最高维不写参数,是为了找到第二维度的开头在哪里。

四、应用

1. swap()

(1) 地址法
cpp 复制代码
void swap(int &a, int &b)
{
    int temp = a;
    a = b;
    b = temp;
}
(2) 指针法
cpp 复制代码
void swap(int *a, int *b)
{
    int temp = *a;
    *a = *b;
    *b = temp;
}

2. isPrime()

cpp 复制代码
bool isPrime(int n)
{
    if (n <= 1)
    {
        return false;
    }
    for (int i = 2; i * i <= n; i++)
    {
        if (n % i == 0)
        {
            return false;
        }
    }
    return true;
}

3. 回文

cpp 复制代码
bool isHuiwen(char s[])
{
    int len = strlen(len);
    for (int i = 0; i < len; i++)
    {
        if (s[i] == s[len-i-1])
        {
            return false;
        }
    }
    return true;
}

五、局部变量

  • 局部变量属于定义其的代码块,代码块执行完毕后,会自动删除节省内存
  • 局部变量的作用范围只限于定义其大括号和大括号内
  • 不会自动初始化,且不能重名

六、全局变量

  • 全局变量在运行结束前都不会被删除
  • 全局变量在任何地方都可以调用
  • 全局变量会自动将自己初始化为0
相关推荐
阿捏利15 小时前
详解Mach-O(十五)Mach-O __DATA_CONST
macos·ios·c/c++·mach-o
宇木灵2 天前
考研数学-高中数学回顾函数的微分day8(完结)
笔记·学习·考研·数学·函数·导数·微分
We....2 天前
仓颉函数:定义、调用与进阶特性
函数·仓颉
_OP_CHEN2 天前
【Linux系统编程】(三十九)吃透线程概念:从底层原理到实战应用
linux·运维·操作系统·线程·进程·多线程·c/c++
宇木灵2 天前
考研数学-高中数学-反三角函数与特殊函数day3
笔记·考研·数学·函数
_OP_CHEN3 天前
【Linux系统编程】(三十八)进程信号拓展:可重入函数 /volatile/SIGCHLD 全解析
linux·运维·进程·c/c++·信号·可重入函数·volatile
_OP_CHEN4 天前
【Linux系统编程】(三十七)信号捕捉全链路拆解|从内核态切换到 sigaction 实战
linux·运维·操作系统·进程·c/c++·信号·信号捕捉
_OP_CHEN5 天前
【Linux系统编程】(三十六)深挖信号保存机制:未决、阻塞与信号集的底层实现全解析
linux·运维·操作系统·进程·c/c++·信号·信号保存
_OP_CHEN6 天前
【Linux系统编程】(三十五)揭秘 Linux 信号产生:从终端到内核全解析
linux·运维·操作系统·进程·c/c++·信号·信号产生
_OP_CHEN6 天前
【算法提高篇】(五)线段树 + 分治:解锁区间问题的终极思路,从最大子段和到复杂序列操作
数据结构·算法·蓝桥杯·线段树·c/c++·分治·acm/icpc