linux c语言函数

1、基本用法

        数据类型(返回值类型) 函数名称 (参数,参数){语句序列;return 表达式;};

2、参数传递

        全局变量

        复制传递

        地址传递

统计小写字母,小写字母转大写

 3、函数中数组传参

        全局数组传递;

        复制地址传递:实参为数组指针,形参为数组名;

        地址传递方式:实参为数组指针,形参为同类型的指针变量;

删除数组中的某一数据;

 strlen

4、指针函数

        (1) 数据类型 * 函数名称(参数说明){};

        返回值是一个地址;考虑程序时考虑内存;

该代码局部变量传参,出现非法访问;

 全局变量,字符串常量或者加static修改变量位置/堆的地址;

(2)a.删除一个字符串的空格(运用两个指针,一个处理一个赋值);

        

 strcpy返回目标的地址;

        b.实现字符串的连结;char *strcat(char *dest ,const char *src);strncat;

        

简化:

 

 while(*dest++);先执行++,进入循环时已经到dest的\0的下一位;

 (3)把整数转化成字符串123-->"123";//itoy()把字符串转化成整数;

 

 (4)递归函数和函数指针

        递归函数:函数的函数体中直接或间接调本身;有终止条件和递归公式;

求n的阶乘;

斐波那契数列;

        1、1、2、3、5

        第一项和第二项相同,从第三项开始该项等于前两项之和;

f(x)(1)x=1,x=2

            f(x-1)+f(x -2)x>2;

代码实现:

        

 

 函数指针;//比较指针函数;

        函数指针用来存放函数的地址。这个地址是一个函数的入口地址;

数据类型(函数指针所指向的函数的返回值类型)(*函数指针名称)(参数(与所指向的函数的形参保持一致));

int add(int a,int b){}//函数

int (*p)(int a,int b);函数指针

p = add;//函数指针赋值;可以多次赋值调用;函数指针可以调用不同的函数;

(*p)(m,n);//函数指针调用;

//man pthread_create;线程创建;//man在linux中用于打开函数原型文件;

//qsort();数组排序;这两个是函数指针的用法之一;

函数指针数组:

        int  (*p[2]) ( int a,int b);

调用qsort()完成整型数组排序;

 练习写strcat函数原型;连结两个字符串;//运用三个指针,一个记录起始地址,一个存链接后的字符串,一个把自身字符串给存链接的那个字符串;

写一个5的阶乘的递归;

n*fac(n-1);n != 0|| n != 1;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值