![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
HelloWorld
文章平均质量分 78
八宝咸鱼
这个作者很懒,什么都没留下…
展开
-
[C++实现&C#调用] 如何遍历DLL导出函数
接下来,函数使用PE文件格式的导出表来查找模块中的导出函数.具体来说,它首先通过模块句柄(HMODULE)获取PE文件的DOS头(IMAGE_DOS_HEADER)和NT头(IMAGE_NT_HEADERS),然后使用导出表数据目录中的地址(IMAGE_DIRECTORY_ENTRY_EXPORT)获取导出表结构(IMAGE_EXPORT_DIRECTORY).导出表结构包含有关导出函数的信息,例如函数数量、名称指针、地址表和序号表.然后,我们查找指定函数名称在字符串中的位置,并提取相关的信息。原创 2023-04-07 23:16:48 · 1912 阅读 · 2 评论 -
[C++调试技巧] MinHook 介绍|文档|例子
MinHook是一个基于微软Detours的一个可移植Hook库,它使用了内存污染和跳转技术来实现Hook.通过使用MinHook,你可以在不需要修改原来函数代码的情况下,运行时更改函数定义.这对于调试,测试,以及在其他程序中注入自己的代码都非常有用.使用MinHook来挂钩函数,即使这些函数是由编译器优化过的,MinHook也可以在不修改原来代码的情况下Hook.这使得MinHook特别适合用于对受保护函数进行Hook但是它也有一些限制。原创 2022-12-22 18:04:29 · 3390 阅读 · 0 评论 -
Visual Studio 2022 安装并使用 Google Test
Visual Studio 2022 配置 Google Test原创 2022-06-25 00:45:41 · 3797 阅读 · 2 评论 -
[C++]如何动态加载DLL
实际流程1.动态加载动态库LoadLibrary("xxxx.dll") // 宏函数 依据项目定义字符格式决定函数版本LoadLibraryA("xxxx.dll")// 窄字符版本LoadLibraryW("xxxx.dll")// 宽字.原创 2022-01-15 02:01:05 · 6947 阅读 · 0 评论 -
[算法][C++]如何在不改变原有链表的情况下判断两个单项链表的相交点
原题目,在不改变两条单项链表的情况下,判断相交点.据说是字节跳动的面试Easy题.class Node{public: int data; Node* next; Node(int data, Node* nextP = nullptr) :data(data), next(nextP) {}};先写一个节点类Node* sameAddress{ new Node{666,new Node{4,new Node{5}}} }; Node No_1{ 1原创 2021-07-10 16:48:34 · 135 阅读 · 0 评论 -
[C++][调试技巧] VS 中的 Debugger Visualizers 使用指南 (.natvis文件)
目录简介使用前的一些检查如何使用Visualizers(让.natvis文件生效)例子简介Debugger Visualizers 是微软在 Visual Studio 2013之后添加的功能.可让程序员使用XMAL定义调试视窗的数据结构显示.以更爽的方式来显示.Visual Studio 中STL容器的调试显示信息就是通过该功能实现的.注意!只支持结构体和类下面是示例图:自定义数据视图支持中文显示.当然,你也可以按照STL的格式来写,完全随你的心情使用前的一些检查1.首先,你需原创 2021-05-29 17:28:57 · 4251 阅读 · 0 评论 -
[C/C++] 指针的原理和对指针的运用及理解(包括函数指针和多级指针)
目录C/C++指针存在的必要性内存和指针原理的简易认知指针的理解指针相关运算符数据指针和函数指针的声明方式指针原理**指针风暴**数据类型权限和指针级数C/C++指针存在的必要性指针的重要性,是毋庸置疑的.有很多时候你都需要对内存进行管理,没有指针,就有受苦的时候了.没有指针,依托节点数据结构铸造出来的数据类型,就是无稽之谈.总不可能为了实现这些非线性数据结构,去写内联汇编吧.C/C++和很多语言最大的区别,就是对于指针的运用.C/C++不像其他语言哪样,对程序员保护的像个小宝宝一样,生怕你原创 2021-05-21 01:33:35 · 1378 阅读 · 0 评论 -
[C++]什么是引用,以及引用和指针的关系(对内存和指针运用的理解)
我看到网上,有很多所谓的,引用是引用变量,指针是指针变量,对某个变量起了个别名之类的错误言论.百度百科都是说引用是变量的别名,这是误人子弟!以下是百度百科原文引用(reference)就是C++对C语言的重要扩充。引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。引用的声明方法:类型标识符&引用名=目标变量名;如果想方便他人理解,这么说,还可以让他人认同.但是言之凿凿的说引用和指针是两个类型,那么就太可笑了.什么是引用?引用其实不过是指针更方便的写法罢了原创 2021-05-08 21:13:35 · 459 阅读 · 1 评论 -
[C++]实现自己的cout和endl(基于运算符重载)
如果你已经看过我关于运算符重载的文章,并且已经理解;那么我们就可以轻而易举的实现出自己的cout和endl 当然,不会实现出std::cout那么强悍的功能.毕竟这可是要从底层开始写起来的,博主这种三键程序员还是算了,但是只是实现出一个类似的,帮助你进一步对运算符重载的理解还是没问题的整个项目源码,下载地址在最下方上代码#include < cstdio >#pragma oncenamespace bbxyIO{ struct ENDL; class St原创 2021-05-08 18:47:57 · 987 阅读 · 0 评论 -
[C++]简单易懂的理解什么是运算符重载 Operator
C++允许我们对函数和运算符重载,函数重载很简单但是运算符重载比函数重载在书写方面更抽象.运算符重载,我们在什么情况下使用?比如两个类对象进行加减乘除,赋值运算等等更简单的说,就是原本自带的运算符不能满足你的代码需求了这时候你就需要使用运算符重载整个项目源码,下载地址在最下方先定义一个复数类template <typename dataType>;class Complex{ dataType realNumber; // 实数 dataType imagNu原创 2021-05-08 18:15:00 · 242 阅读 · 1 评论