- 博客(20)
- 资源 (15)
- 收藏
- 关注
原创 数组名是个神奇的东东
#include int main(){ int a[5] = {1,2,3,4,5}; int *ptr1 = (int *)(&a+1); int *ptr2 = (int *)(a+1); int *ptr3 = (int *)((int)a+1); printf("%x/n", ptr1[-1]); printf("%x/n", ptr2[-1]); printf("%x/n", *ptr3); return 0;}输出结果:51200
2010-08-05 21:15:00 684
原创 Winodws、linux中的进程与线程
摘自《程序员的自我修养》Windows对进程和线程的实现如果教科书一般标准,Windows内核有明确的线程和进程的概念。在WindowsAPI中,可以使用明确的API:CreateProcess和CreateThread来创建进程和线程,并且有一系列的API来操作它们。但对于Linux来说,线程并不是一个通用的概念。Linux对线程的支持颇为贫乏,事实上,在Linux内核中并不存在真正意义上的线程概念。Linux将所有的执行实体(无论是线程还是进程)都称为任务(Task),每一个任务概念上都类似于一个单线程
2010-07-18 19:13:00 864
原创 《TCP/IP Sockets 编程》笔记4
第4章 使用UDP套接字UDP只执行两种功能:1.向IP层添加了另一个寻址(端口)层;2.检测传输中可能发生的数据损坏,并丢弃任何损坏的数据报。
2010-07-09 17:05:00 699
原创 《TCP/IP Sockets 编程》笔记3
第3章 关于名称和地址族Accessing the Name Serviceint getaddrinfo (const char *hostStr, const char *serviceStr, const struct addrinfo *hints, struct addrinfo **results)results 是struct addrinfo指针的位置,将存储一个指向包含结果的链表的指针。成功返回0,失败返回非0错误代码另外两个辅助函数void freeaddrinfo(struct add
2010-07-06 23:42:00 863
原创 《TCP/IP Sockets 编程》笔记2
经典TCP客户的通信涉及4个基本步骤:1.使用socket()创建TCP套接字2.使用connect()建立到服务器的连接(需要提供一个sockaddr_in结构)3.使用send()和recv()通信4.使用close()关闭连接TCP是一种字节流协议,这类协议的一种实现是不会保持send()边界。通过在连接一端调用send()发送的字节可能不会通过在另一端单独调用一次recv()而全都返回。编写使用套接字的应用程序的基本原则是:对于网络和另一端的程序将要做什么,永远都不能做假设。This is a ba
2010-07-05 21:15:00 1761 1
原创 sendto的调用导致recvfrom返回
创建一个UDP套接字,在套接字上调用recvfrom,线程等待在该函数上。如果在另一个线程中,在同一套接字上调用sendto将导致recvfrom返回,返回值为-1。具体原因不明,先记录一下。
2010-07-05 14:47:00 1612
原创 C++ 多态
#include using namespace std;class A{public: void show(){ cout show(); return 0; }
2010-07-05 09:50:00 503
原创 《TCP/IP Sockets 编程》笔记1
第1章 简介计算机网络由通过通信信道互连的机器组成。这些机器称为主机(host)和路由器(router)。主机上运行的应用程序是网络的真正“用户”。路由器又称为网关,负责把信息从一条通信信道中继或转发到另一条通信信道,它们可能运行程序,但通常不会运行应用程序。通信信道(communication channel)是把字节序列从一台主机传送到另一台主机的工具。路由器并不把每一台主机直接连接到所有其它的主机,而是将少数几台主机连接到一个路由器,再把该路由器连接到其它路由器,从而构成网络。这种安排允许利用数量相对
2010-07-05 00:08:00 1477
转载 Comparison of popular compilers and IDEs
Published by chrisnameLast update on May 30, 2010 at 8:43pm UTCNote: This article is a work in progress but if you do read it, please feel free to PM your improvements to me. Thanks.The DifferencePeople often confuse the difference between a 'compiler' and
2010-06-09 15:30:00 783
转载 A brief description of C++
Published by Juan SoulieLast update on Sep 29, 2009 at 2:52pm UTC ProgramsNowadays computers are able to perform many different tasks, from simple mathematical operations to sophisticated animated simulations. But the computer does not create these task
2010-06-09 14:26:00 981
转载 C++ Language FAQ
Published by Juan SoulieLast update on Jul 19, 2008 at 2:26pm UTC What is C++? C++ is a programming language. It literally means "increased C", reflecting its nature as an evolution of the C language.Is it necessary to already know another programming lang
2010-06-09 14:20:00 581
转载 History of C++
Published by Juan SoulieLast update on Jul 19, 2008 at 2:26pm UTCDuring the 60s, while computers were still in an early stage of development, many new programming languages appeared. Among them, ALGOL 60, was developed as an alternative to FORTRAN but taki
2010-06-09 14:15:00 501
原创 有道难题资格赛(1) 有道搜索框
描述 在有道搜索框中,当输入一个或者多个字符时,搜索框会出现一定数量的提示,如下图所示:现在给你N个单词和一些查询,请输出提示结果,为了简化这个问题,只需要输出以查询词为前缀的并且按字典序排列的最前面的8个单词,如果符合要求的单词一个也没有请只输出当前查询词。 输入 第一行是一个正整数N,表示词表中有N个单词。接下来有N行,每行都有一个单词,注意词表中的单词可能有重复,请忽略掉重复单词
2010-05-30 01:58:00 624 1
原创 有道难题资格赛(1) 另类的异或
描述 对于普通的异或,其实是二进制的无进位的加法这里我们定义一种另类的异或A op B, op是一个仅由^组成的字符串,如果op中包含n个^,那么A op B表示A和B之间进行n+1进制的无进位的加法。下图展示了3 ^ 5 和 4 ^^ 5的计算过程 输入 第一行有一个正整数T, 表示下面共有T组测试数据。接下来T行,每行有一组测试数据,是由空格隔开的三个部分组成:A B CA和C是两
2010-05-30 01:56:00 1171
原创 查找字符串中字符不重复的最大子串(C/C++)
#include #include #include //说明:查找字符串中字符间不同的最大子串//参数:*string 待搜索字符串// *rst 存放找到的最大子串//返回:找到最大子串长度int findMaxSubstring(const char *string, char *rst){ char *p = (char*)st
2010-05-11 15:40:00 3283
原创 《80x86汇编语言程序设计教程》P212--STRSTR子程序
添加了自己的一点注释,感觉看起来更明白一点。 ;子程序名:strstr;功 能:判断字符串2是否是字符串1的字串;入口参数:指向字符串的远指针;出口参数:DX:AX返回指向字符串2在字符串1中首次出现处的指针;说 明:调用方法如下--; 压入字符串2的远指针; 压入字符串1的远指针; call far ptr strstrstrstr proc far push bp mov
2009-04-01 23:04:00 1122
原创 8086汇编不溢出除法
assume cs:code, ds:data, ss:stackstack segment db 16 dup (0)stack endscode segmentstart: mov ax, 4240h mov dx, 0fh mov cx, 0ah call divdw mov ax, 4c00h int 21h;;;divdw子程序;;;;;;;;
2009-03-29 21:23:00 954
密集环境下RFID读写器组网关键技术研究(硕士毕设答辩ppt)
2012-02-07
SUSE Linux Toolbox - 1000+ Commands for openSUSE and SUSE Linux Enterprise
2012-01-11
Effective TCPIP Programming
2012-01-02
TCP IP Sockets in C, Second Edition
2010-07-04
软件开发沉思录 The ThoughtWorks Anthology
2010-05-09
Beautiful Architecture
2009-11-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人