2011年11月28日

sockaddr_in中的sin_family=PF_INET是什么意思?(转)

摘要: sockaddr_in中的sin_family=PF_INET是什么意思?sin_family还有别的值吗?如果有都有什么?这些其他的值都是什么意思?你可以直接看定义所在的winsock.h啊 AF_INET是internet地址族,包括了tcp、udp什么的, IPX、pipe什么的就不用AF_INET这个值PF_INET与AF_INET究竟有什么不同?实际上,原来的想法是每个通信域(如PF_INET)可能对应多个协议(如AF_INET),而事 实上支持多个协议的通信域一直没有实现。因此,在linux内核中,AF_***与PF_***被定义为同一个常数,因此,在编程时可以不加区分地使用他 . 阅读全文

posted @ 2011-11-28 13:52 千兵卫博士 阅读(850) 评论(0) 推荐(0) 编辑

转载:Linux下的段错误产生的原因及调试方法

摘要: 简而言之,产生段错误就是访问了错误的内存段,一般是你没有权限,或者根本就不存在对应的物理内存,尤其常见的是访问0地址.一些注意事项1、出现段错误时,首先应该想到段错误的定义,从它出发考虑引发错误的原因。2、在使用指针时,定义了指针后记得初始化指针,在使用的时候记得判断是否为NULL。3、在使用数组时,注意数组是否被初始化,数组下标是否越界,数组元素是否存在等。4、在访问变量时,注意变量所占地址空间是否已经被程序释放掉。5、在处理变量时,注意变量的格式控制是否合理等。一般 来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器,其中的 阅读全文

posted @ 2011-11-28 10:54 千兵卫博士 阅读(298) 评论(0) 推荐(1) 编辑

Lex和Yacc应用方法(转)

摘要: Lex(Lexical Analyzar 词法分析生成器),Yacc(Yet Another Compiler Compiler编译器代码生成器)是Unix下十分重要的词法分析,语法分析的工具。经常用于语言分析,公式编译等广泛领域。遗憾的是网上中文资料介绍不是过于简单,就是跳跃太大,入门参考意义并不大。本文通过循序渐进的例子,从0开始了解掌握Lex和Yacc的用法。<本系列文章的地址:http://blog.csdn.net/liwei_cmg/category/207528.aspx>一.Lex(Lexical Analyzar) 初步示例先看简单的例子(注:本文所有实例皆在Re 阅读全文

posted @ 2011-11-28 10:36 千兵卫博士 阅读(2864) 评论(0) 推荐(0) 编辑

导航