如何隐藏自己的代码(很酷)

1.引入

幻想当我们成为一名优秀的程序员,有着各大公司想要买我们的代码,但我们并不想要让他们知道我们代码的实现,毕竟一复制便可以解决,这里我们希望有一种方法可以把我们的核心代码给隐藏掉,那我们又应该怎么去实现呢?接下来让我们一起来看看吧

2.多个文件的使用

⼀般在企业中我们写代码时候,代码可能⽐较多,不会将所有的代码都放在⼀个⽂件中;我们往往会根据程序的功能,将代码拆分放在多个⽂件中。
⼀般情况下,函数的声明、类型的声明放在头⽂件(.h)中,函数的实现是放在源⽂件(.c)⽂件中。
如下:
a.add.c

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

b.add.h

复制代码
//函数的声明
int Add(int x, int y);

c.test.c

复制代码
#include <stdio.h>
#include "add.h"
int main()
{
 int a = 10;
 int b = 20;
//函数调⽤
 int c = Add(a, b);
 printf("%d\n", c);
 return 0; }

这里我们可以实现把关键的函数实现与主函数分开,放在不同文件中,不仅方便团队的协作,而且可以使代码更加有条理,但是我们要注意,如果是使用自己的创造的头文件的话,应该用双引号,同时头文件里面放的都是函数的声明,函数的具体实现是在源文件中的。

通过这种分开,我们可以把我们的关键核心代码放入其他源文件中,然后我们只需要把这些源文件进行加密封装即可,售出给公司时,只需要提供头文件(函数的声明与介绍)以及加密的源文件即可,具体怎么加密呢,那就需要静态库的应用。

这是自己的代码,将重要代码放在这个文件中

通过改变文件的属性为静态库,将这些文件化为lib文件

我们打开lib文件可以发现,此时已经将之前的核心代码进行加密了, 而当我们想要卖给公司时,只需要把lib文件发给他,以及头文件中的函数声明发给他即可,头文件是告知其函数使用。

导入前(公司)

导入后 使用 我们尝试运行

发现存在错误,实际上还不够,因为静态库的使用是需要导入的,导入方法:

插入代码 #pragma comment(lib,"add自己的代码.lib") 双引号里面的是lib文件的名字

这样子就运行成功了啦,同时也隐藏了我们的代码

相关推荐
2401_8603195229 分钟前
【无标题】
开发语言·学习·rust
ShineWinsu1 小时前
对于数据结构:堆的超详细保姆级解析——下(堆排序以及TOP-K问题)
c语言·数据结构·c++·算法·面试·二叉树·
linmengmeng_13141 小时前
【Jenkins】Jenkins配置从节点 - Launch Agent
运维·servlet·jenkins
Nebula_g2 小时前
C语言应用实例:解方程(二分查找)
c语言·开发语言·学习·算法·二分查找·基础
散峰而望2 小时前
C语言刷题-编程(一)(基础)
c语言·开发语言·编辑器
人工智能训练2 小时前
如何在 Ubuntu 22.04 中安装 Docker 引擎和 Linux 版 Docker Desktop 桌面软件
linux·运维·服务器·数据库·ubuntu·docker·ai编程
三品吉他手会点灯2 小时前
stm32f103学习笔记-16-RCC(第2节)-讲解系统时钟配置函数SetSysClockTo72()
笔记·stm32·单片机·嵌入式硬件·学习
Maple_land2 小时前
Linux复习:系统调用与fork
linux·运维·服务器·c++·centos
996终结者2 小时前
Docker核心用途实战:彻底解决环境一致性问题
运维·docker·容器
小晶晶京京3 小时前
day61-devops
运维·devops