初识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;
}
相关推荐
土司大王13 小时前
LeetCode hot100——对称二叉树
算法·leetcode·职场和发展
sali-tec14 小时前
C# 基于OpenCv的视觉工作流-章106-差值追踪
图像处理·人工智能·opencv·算法·计算机视觉
Navigator_Z14 小时前
LeetCode //C - 1208. Get Equal Substrings Within Budget
c语言·算法·leetcode
手写码匠14 小时前
Dify 多 Agent 工具权限与安全沙箱实战:让智能体“有能力,但不越权“
人工智能·深度学习·算法·aigc
黎阳之光14 小时前
打破堆场感知黑盒:黎阳之光视频孪生,构建港口码头网格化透明管控新体系
大数据·人工智能·算法·安全·数字孪生
xx~t14 小时前
嵌入式——进程与线程1
linux·c语言·学习·嵌入式·进程与线程
大模型码小白14 小时前
AI 对话流性能调优:万级消息的虚拟滚动落地
java·大数据·前端·javascript·人工智能·算法·机器学习
m0_5474866615 小时前
《JavaScript核心原理 》全套PPT课件2026
开发语言·javascript·ecmascript
老当益壮梁奶奶15 小时前
Linux软件编程学习笔记(七):线程分离与线程间通信详解
linux·c语言·c++·笔记·学习
MC皮蛋侠客15 小时前
Tauri 2.x 系列(五):调用系统 API——官方插件、Rust crate 与原生能力
开发语言·后端·rust