huyc

导航

2011年10月17日 #

内存复制,交换排序,洗牌函数

摘要: 1.string.h里面有一掇内存函数,其中两个是memcpy和memmove,据说两者是有差别的,前面那个是拷贝,区域重合时会覆盖数据;后面那个是移动,效率稍低,但是可以定住重合压力。来个memmove的演示代码:#include <stdio.h>/*移动src的siz个字节到dest,且当两个区域重合时也能正常移动*/void memory_move(char *dest, const char *src, size_t siz){ int off = 0; size_t i, j; if(dest >= src && dest < (src + 阅读全文

posted @ 2011-10-17 23:04 huyc 阅读(707) 评论(0) 推荐(0) 编辑

IPv4报文分片代码

摘要: IP报文内包装了一个ICMP报文,不过还是没法重组报文。想要练习重组报文似乎得直接抓链路层的包才行。#include <sys/types.h>#include <sys/socket.h>#include <sys/uio.h>#include <netdb.h>#include <linux/icmp.h>#include <linux/ip.h>#include <unistd.h>#include <stdlib.h>#include <stdio.h>#include < 阅读全文

posted @ 2011-10-17 16:53 huyc 阅读(1834) 评论(0) 推荐(0) 编辑