初识C语言——第二十五天

函数的嵌套调用和链式访问

函数不可以嵌套定义,但可以嵌套调用

链式访问:把一个函数的返回值作为另外一个函数的参数

复制代码
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>

//写一个函数,每调用一次这个函数,就会 将num的值加1
//void Add(int* p)
//{
//    (*p)++;
//}
//
//int main()
//{
//    int num = 0;
//    Add(&num);
//    printf("%d\n", num);
//
//    Add(&num);
//    printf("%d\n", num);
//
//    Add(&num);
//    printf("%d\n", num);
//
//
//    return 0;
//}


#include <string.h>
int main()
{
    //int len = strlen("abc");
    //printf("%d\n", len);

    //链式访问,把strlen("abc")的返回值作为printf()函数的参数
    //printf("%d\n", strlen("abc"));

    char arr1[20] = { 0 };
    char arr2[] = "bit";
    strcpy(arr1, arr2);

    printf("%s\n", arr1);
    printf("%s\n", strcpy(arr1, arr2));

    printf("%d", printf("%d", printf("%d", 43)));
    return 0;
}

函数的声明和定义

函数的声明

函数的定义

复制代码
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>

//写一个函数,每调用一次这个函数,就会 将num的值加1
//void Add(int* p)
//{
//    (*p)++;
//}
//
//int main()
//{
//    int num = 0;
//    Add(&num);
//    printf("%d\n", num);
//
//    Add(&num);
//    printf("%d\n", num);
//
//    Add(&num);
//    printf("%d\n", num);
//
//
//    return 0;
//}


//#include <string.h>
//int main()
//{
//    //int len = strlen("abc");
//    //printf("%d\n", len);
//
//    //链式访问,把strlen("abc")的返回值作为printf()函数的参数
//    //printf("%d\n", strlen("abc"));
//
//    char arr1[20] = { 0 };
//    char arr2[] = "bit";
//    strcpy(arr1, arr2);
//
//    printf("%s\n", arr1);
//    printf("%s\n", strcpy(arr1, arr2));
//
//    printf("%d", printf("%d", printf("%d", 43)));
//    return 0;
//}

int main()
{
    int a = 10;
    int b = 20;
    
    //函数声明一下-告知
    int Add(int x, int y);

    int c = Add(a, b);
    printf("%d\n", c);


    return 0;
}

//函数的定义
int Add(int x, int y)
{
    return x + y;
}

如何创建并导入静态库?

1.项目工程中------>属性------>配置类型------>静态库------>应用------>确定

2.编译一下 ctrl+f7 ctrl+5(可以编译 但是没有办法运行)

3.在上层目录Debug文件下就会有lib文件

4.将(.lib)文件和(.h)文件卖给别人

5.(.h)文件中解释使用说明,即参考书

6.调用(.lib)文件 导入静态库#pragma comment(lib,"XXX.lib")文件

复制代码
#include "sub.h"

// 导入静态库
#pragma comment(lib,"sub.lib")

int main()
{
    int a = 10;
    int b = 20;
    //int c=Add(a,b);

    int c = sub(a, b);
    printf("%d\n", c);



    return 0;
}
相关推荐
鬼手点金5 小时前
Scrapy + Playwright 完整示例(JS 动态渲染网页)
开发语言·javascript·爬虫·python·scrapy·html·json
Mr. zhihao5 小时前
深度解析:为什么Java序列化需要搭配ByteArrayOutputStream?IO装饰器模式的精妙设计
java·开发语言·装饰器模式
逆境不可逃5 小时前
【LeetCode 912】排序数组——随机化快速排序详解
数据结构·算法·排序算法
Coder-magician5 小时前
《代码随想录》刷题打卡day31:动态规划-背包问题part02
算法·动态规划
薛定e的猫咪5 小时前
从因果视角解决多智能体协作:细读 SCIC 算法
算法
c238565 小时前
《算法武林谱:四大排序神功与二分寻宝术全解》
数据结构·算法·排序算法
格林威5 小时前
多相机并行采图最佳实践:Task.WhenAll + 异常处理 + 资源释放
开发语言·人工智能·数码相机·计算机视觉·c#·视觉检测·机器视觉
一米阳光86615 小时前
软考(中级)软件设计师核心笔记(9)算法——时间复杂度与空间复杂度、查找算法、排序算法
笔记·算法·职场发展·软考·软件设计师·中级职称
djjjx.5 小时前
【 C++ 】多态
开发语言·c++·多态
夜雪一千5 小时前
Python如何使用XPath定位没有特征的元素?无id、无class通用定位技巧
开发语言·python