C++ 函数与指针

函数内部数据是地址需要传递给调用函数,返回的当然是指针了!当然,这个返回地址也可以通过函数参数返回!

函数的参数是指针可以输出函数多个结果,返回值本身就是返回数据,什么时候需要返回指针呢?

一般形式

类型定义符 *指针型函数名(形参列表)

{

函数体;

}

"类型定义符"是指返回指针指向的数据类型。

一 分析输入输出与算法

例:实现匹配函数match:程序在输入字符串中查找一个给定的字符,如果找到,则从该字符开始打印余下的子字符串,及该字符是字符串的第几个字符;否则输出"no match found".

分析:

(1) match 函数有2个输入参数:字符串;字符;

(2)功能:在输入字符串中查找一个给定的字符,如果找到,则从该字符开始打印余下的子字符串,及该字符是字符串的第几个字符;否则输出"no match found".

(3)问题:函数的输出是什么?打印这个功能是否应该在match函数内部完成?

输入转换为输出的算法是什么?

二 指向函数的指针(函数指针)

函数的入口地址

程序也存储在内存中,与数据一样,函数的第一条指令的地址,称为函数的入口地址;编译器将不带()的函数名解释为函数的入口地址。调用函数时,实际就是转到函数的入口地址,去执行入口地址的第一条指令。

三 函数指针

指向函数的指针简称为函数指针;

指向了函数的第一条指令的地址,即存储的是函数的入口地址;

这里可以将函数理解为一个变量,只是这个变量是一段可执行的指令,使用函数指针可以编写更通用,更灵活的程序。


相关推荐
繁星璀璨G2 分钟前
C++11标准模板(STL)- 常用数学函数 - 计算e的给定幂 (ex)(std::exp, std::expf, std::expl)
开发语言·c++·算法·stl·计算e的给定幂
the sun342 分钟前
C++红黑树
c++
程序猿练习生9 分钟前
C++速通LeetCode中等第20题-随机链表的复制(三步简单图解)
c++·leetcode·链表
阑梦清川31 分钟前
C++初阶-list用法总结
开发语言·c++·stl·list
秋落风声32 分钟前
C++---类与对象一
c++
wheeldown38 分钟前
【数据结构&&C语言】【入门】【首次万字详细解析】入门阶段数据结构可能用到的C语言知识,一章让你看懂数据结构!!!!!!!
c语言·开发语言·数据结构
XYLoveBarbecue1 小时前
C++ 把字符串转换成整数 (atoi) - 力扣(LeetCode)
c++·leetcode
小麦黑客笔记1 小时前
2024年三个月自学手册 网络安全(黑客技术)
开发语言·网络·安全·web安全·网络安全
s_little_monster1 小时前
【C++】模版进阶
开发语言·c++·经验分享·笔记·学习·学习方法
Stanford_11061 小时前
C++入门基础知识79(实例)——实例 4【求商及余数】
开发语言·前端·javascript·c++·微信小程序·twitter·微信开放平台