C/C++
文章平均质量分 70
繁华落尽梦一场-
这个作者很懒,什么都没留下…
展开
-
浅谈 C++中成员函数的重载、覆盖和隐藏
C++是强大的,stl库简直就是人类智慧的结晶;C++是复杂的,在此之前我都不敢说熟悉C++,对于那些在程序中只用了cin、cout就说他的那是C++代码的程序员们,我感到很好笑。 现在谈谈C++中成员方法间的重载、覆盖以及隐藏。以下文章纯属自己的感觉,大神勿喷,高手绕道,若有错误,欢迎指出。 那天去和同学去面试,他问我C++技术面会面试什么,我说就那些,继承、重载、覆盖、隐藏。听原创 2015-04-02 14:31:14 · 577 阅读 · 0 评论 -
linux共享内存
#include #include #include #include #include #include #define BUFFER_SIZE 4int main(){ int shmid = shmget((key_t)1234, sizeof(int) * BUFFER_SIZE, 0644 | IPC_CREAT); if ( -1 == s原创 2015-06-12 16:40:41 · 332 阅读 · 0 评论 -
Python调用DLL
C语言中的函数默认是__cdecl调用,C++中可用__stdcall来显示声明调用,但也可以用extern “C”用python调用dll时需要根据不同的调用约定而使用不同的函数。但是不管什么调用,最后都必须用extern “C”来防止名字粉碎。dll源文件:#include extern "C" _declspec(dllexport) int __stdcall stdAd原创 2015-05-04 22:27:21 · 914 阅读 · 0 评论 -
winpcap实现从TCP三次握手到发送http请求
之前的文章我都是贴出了协议的格式,对具体字段没有具体说明,今天在这里补充一下。/* IP报文格式0 8 16 32+------------+------------+-------------------------+| ver + hlen | 服务类原创 2015-04-23 12:07:36 · 5531 阅读 · 5 评论 -
[LeetCode] 判断两个链表是否有公共节点并返回第一个公共节点
Write a program to find the node at which the intersection of two singly linked lists begins.For example, the following two linked lists:A: a1 → a2 ↘原创 2015-04-27 15:02:01 · 2034 阅读 · 0 评论 -
[LeetCode] Minimum Depth of Binary Tree
Given a binary tree, find its minimum depth.The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.题目大概意思是说求二叉树的最小深度,原创 2015-04-27 17:48:39 · 344 阅读 · 0 评论 -
[LeetCode] Path Sum 求二叉树中满足要求的路径
Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all the values along the path equals the given sum.For example:Given the below binary tree and sum原创 2015-04-27 17:24:32 · 572 阅读 · 0 评论 -
TCP/IP中那些令人豁然开朗的说明
1、ACK报文段永远不需要被确认。我不知道大家有没有这么想过:在TCP通过三次握手建立连接的时候,最后一次握手是客户端对服务器的ACK报文,那么客户端怎么知道这个ACM报文确实被服务器收到了呢?照这么来说,服务器是不是有需要给客户端返回一个ACK,这样就死循环下去。。。“ACK报文段永远不需要被确认”这句话是我在书上看到的,书上也没说原因,那就信了吧,至于真正的原因,以后慢慢找。原创 2015-04-27 11:26:36 · 590 阅读 · 0 评论 -
基于winpcap和syn的dos攻击,亲测
网上这样的帖子很多,但有几个问题一直没解决。1、在计算TCP报头的校验和时应该还有伪报头,很多人都没有。2、在封装以太网数据包时需要用到目的地址的mac地址,由于很多人是在虚拟机上测,目的mac也就知道,但事实上,对于真正的远端主机来说,我们只能获取它的IP地址,而mac地址是无法获取的。而事实上,这儿的目标mac应该写的是网关mac地址。下面看我一步一步写syn攻击。一、首先要清原创 2015-04-21 14:02:58 · 3915 阅读 · 1 评论 -
基于ARP和WinPcap的网络嗅探
WinPcap是windows下的一个开源库,简单来说就是用户自己可以发送数据包,比如windows XP之后就不能用socket发送SYN数据包了,因为操作系统进行了封装。所以想要发送自己的数据包,就要绕开操作系统,WinPcap就提供了这样的功能。 再说ARP——地址解析协议,ARP是数据链路层的协议。一般来说,一个局域网会用一个或多个路由器与Internet连接,那么当外部数据要原创 2015-04-03 16:40:43 · 603 阅读 · 0 评论 -
一步一步学linux多线程编程
windows下的多线程已经很熟悉了,本以为迁移到linux很容易,但发现原创 2015-06-10 11:01:54 · 672 阅读 · 0 评论