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


    1.引入

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

    2.多个文件的使用

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

    b.add.h

    1. //函数的声明
    2. int Add(int x, int y);

    c.test.c

    1. #include
    2. #include "add.h"
    3. int main()
    4. {
    5. int a = 10;
    6. int b = 20;
    7. //函数调⽤
    8. int c = Add(a, b);
    9. printf("%d\n", c);
    10. return 0; }

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

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

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

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

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

      导入前(公司)

      导入后  使用  我们尝试运行

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

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

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

  • 相关阅读:
    金融液冷数据中心,噱头还是趋势?
    JVM: 设置代码执行模式(解释模式、编译模式、混合模式)
    计算机组成原理 | 数据的表示、运算和校验(3)数据处理与存储
    java中如何创建一个多线程类呢?
    Deepin下vsftp服务安装配置虚拟用户
    IDEA中maven jar下载失败问题处理
    商城商品的知识图谱构建
    【从零开始学习 SystemVerilog】7.1、SystemVerilog 类—— Class 概述
    AOP获取通知以及实际应用
    Java Web(十二)--JSP
  • 原文地址:https://blog.csdn.net/xdx2578/article/details/134554089