首页 电脑教程 电脑知识 用指针方式编写C语言函数的实现

用指针方式编写C语言函数的实现

Jan 24, 2024 pm 09:39 PM
指针函数语言

用指针方式编写C语言函数的实现

用指针方式编写C语言函数的实现

int find(char* source/*源串*/, char* target/*子串*/)//找到返回在源串中的位置,未找到返回-1,如果要改为找到返回1,把return i改为return 1;

{

int i,j;

int s_len=strlen(source);

int t_len=strlen(target);

if(t_len>s_len)

{

return -1;

}

for(i=0;i

{

j=0;

int flag=1;

if(source[i]==target[j])

{

int k,p=i;

for(k=0;k {

if(source[p]==target[j])

{

p++;

j++;

continue;

}

else

{

flag=0;

break;

}

}

}

else

{

continue;

}

if(flag==1)

{

return i;

}

}

return -1;

}

利用指向函数的指针编程

函数指针有时候是很有用的,比如在结构体中定义函数指针就可以在C语言中实现类似C++的类成员函数的特性.

下面的程序定义了一个函数指针数组,根据输入数字的余数(1或0),不用if else就能调用相应的函数了.

// 输入为奇数

void FuncOdd(int n)

{

float i, nIterator = 0;

printf("You entered an odd number.n");

for (i = 1; i {

nIterator+=1/i;

}

printf("And the result is: %fn",nIterator);

}

// 输入为偶数

void FuncEven(int n)

{

float i, nIterator = 0;

printf("You entered an even number;n");

for (i = 2; i {

nIterator+=1/i;

}

printf("And the result is: %fn",nIterator);

}

int main()

{

int nInput = 0; // 存放输入的数字

void (*func[2])(int); // 定义函数指针,指向两个不同的函数

func[0] = FuncEven;

func[1] = FuncOdd;

printf("Please input a number:"); // 从控制台获取输入

scanf("%d",&nInput);

(*func[nInput%2])(nInput); // 根据输入数字调用相应函数

return 0;

}

c语言指针用法

int top 应不属于指针的范畴了,而是int的常用变量的定义,这个top要看是怎么用法,如果按照负数,0,正数来使用的话,可以判断它是用来做为这个类的一个特殊的定义标识; 如果这个变量是一个循环里面的的计数器的话(意思就是随着循环的次数增多或者减少)就可以判断这个循环成功的执行的多少次了

Reader是一个类名,意思类也是一种数据类型

就像整型int一样是一个数据类型名称

Reader read[Maxr];意思是定义了一个这样类的数组变量,Marxr 估计就是一个宏定义好的一个数值

为什么可以这样定义呢,应为class可以包含任意的数据类型(和c里面的struct一样),也包括外部class

以上是用指针方式编写C语言函数的实现的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何求解Windows错误代码' Invalid_data_access_trap” (0x00000004) 如何求解Windows错误代码' Invalid_data_access_trap” (0x00000004) Mar 11, 2025 am 11:26 AM

本文介绍了Windows“ Invalid_data_access_trap”(0x00000004)错误,一个关键的BSOD。 它探讨了常见原因,例如故障驱动程序,硬件故障(RAM,硬盘驱动器),软件冲突,超频和恶意软件。 特鲁

ENE SYS维护:使系统顺利运行的技巧和技巧 ENE SYS维护:使系统顺利运行的技巧和技巧 Mar 07, 2025 pm 03:09 PM

本文提供了维护ENE SYS系统的实用技巧。 它解决了普遍的问题,例如过热和数据损坏,提供预防措施,例如常规清洁,备份和软件更新。 量身定制的维护

在ENE SYS实施期间避免的5个常见错误 在ENE SYS实施期间避免的5个常见错误 Mar 07, 2025 pm 03:11 PM

本文确定了ENE系统实施中的五个常见陷阱:计划不足,用户培训不足,数据迁移不当,忽略安全性和测试不足。 这些错误可能导致项目延迟,系统故障

如何编辑注册表? (警告:谨慎使用!) 如何编辑注册表? (警告:谨慎使用!) Mar 21, 2025 pm 07:46 PM

文章讨论了编辑Windows注册表,预防措施,备份方法以及不正确的编辑中的潜在问题。主要问题:系统不稳定和数据丢失的风险不当变化。

发现如何在Windows设置中修复驱动健康警告 发现如何在Windows设置中修复驱动健康警告 Mar 19, 2025 am 11:10 AM

Windows设置中的驱动器健康警告是什么意思?收到磁盘警告时该怎么办?阅读本php.cn教程以获取逐步说明以应对这种情况。

哪个应用程序使用ene.sys 哪个应用程序使用ene.sys Mar 12, 2025 pm 01:25 PM

本文将ene.sys视为Realtek高清音频驱动程序组件。 它详细介绍了其在管理音频硬件方面的功能,并强调了其在音频功能中的关键作用。 该文章还指导用户验证其合法性

如何管理Windows的服务? 如何管理Windows的服务? Mar 21, 2025 pm 07:52 PM

文章讨论了管理系统健康的Windows服务,包括启动,停止,重新启动服务以及稳定性的最佳实践。

为什么驱动器aSio.sys不加载 为什么驱动器aSio.sys不加载 Mar 10, 2025 pm 07:58 PM

本文介绍了Windows asio.sys音频驱动程序的故障。 常见原因包括损坏的系统文件,硬件/驱动程序不兼容,软件冲突,注册表问题和恶意软件。故障排除涉及SFC扫描,驱动程序UPDA

See all articles