(学习日报)2022.7.19

写在前面:
由于时间的不足与学习的碎片化,写博客变得有些奢侈。
但是对于记录学习(忘了以后能快速复习)的渴望一天天变得强烈。
既然如此
不如以天为单位,以时间为顺序,仅仅将博客当做一个知识学习的目录,记录笔者认为最通俗、最有帮助的资料,并尽量总结几句话指明本质,以便于日后搜索起来更加容易。


标题的结构如下:“类型”:“知识点”——“简短的解释”
部分内容由于保密协议无法上传。


点击此处进入学习日记的总目录

2022.7.19

  • 一、C/C++: `extern` —— 关键字
  • 二、C/C++:`extern "C"` —— C/C++混合编程
  • 三、C/C++:`dll`与`lib`——动态链接库和静态链接库
  • 四、C/C++:`Sleep(1000)`——时延函数
  • 五、C/C++:`system("cls")`——清屏函数

一、C/C++: extern —— 关键字

  1. extern是一种声明,不管在程序何处声明,在其声明前 或 其他文件中,都能使用该变量。
  2. 在函数之外定义的变量其实就是一种声明。
  3. 声明最好和赋值分成两句。
  4. 最好别在头文件中使用extern ,会引起很多不必要的麻烦。

链接:
extern——关键字


二、C/C++:extern "C" —— C/C++混合编程

  1. 实现C++和C的混合编程。
  2. 搭配 #ifdef __cplusplus 使用会有奇效。

链接:
extern “C”:实现C++和C的混合编程

三、C/C++:dlllib——动态链接库和静态链接库

  1. 编写动态链接库:
  • 新建.h文件与.cpp文件
  • .cpp文件引用.h文件
  • .h文件中加入#define Import extern "C" _declspec(dllexport),用Import来代替extern "C" _declspec(dllexport),确定需要导出的函数,如Import int sum(int a, int b);
  • .cpp文件中加入sum函数的具体定义。
    (学习日报)2022.7.19_第1张图片
  • 最后编译.cpp,如果成功则在Debug里可以看到 .dll 动态库文件。

C语言和C++语言导出的dll文件中,函数的修饰名是不一样的。
如果要C语言风格的(.dll)文件,就要再加上"extern C"进行修饰,或者把源文件名的后缀改为(.c)
如果是要C++风格的(.dll)文件,则源文件名后缀必须为(.cpp)

  1. 隐式调用
  • 在编译dll文件时已经Import函数的情况下,按照下图即可调用库函数。
    (学习日报)2022.7.19_第2张图片
  1. 显示调用
  • 在编译dll文件时已经Import函数的情况下,按照下图即可调用库函数。
    (学习日报)2022.7.19_第3张图片

链接:
动态链接库(DLL)
一文彻底搞懂静态库和动态库,显示链接和隐式链接

四、C/C++:Sleep(1000)——时延函数

  1. 头文件为 #include
  2. 括号里单位为ms,1000为时延1秒。

链接:
C\C++中计时、延时函数

五、C/C++:system("cls")——清屏函数

  1. 头文件为#include
  2. 清除屏幕,适合刷新率不高的程序,如果高的话会很闪眼睛。

链接:
C++ 刷新屏幕

你可能感兴趣的:(学习日记,C语言,与,C++,学习,c++,mfc)