
c
tspangle
千里之行始于足下,
记录成长的点点滴滴
展开
-
linux系统编程之信号(六):信号发送函数sigqueue和信号安装函数sigaction
一,sigaction()#include int sigaction(int signum,const struct sigaction *act,struct sigaction *oldact));sigaction函数用于改变进程接收到特定信号后的行为。该函数的第一个参数为信号的值,可以为除SIGKILL及SIGSTOP外的任何一个特定有效的信号(为这两个信号定义转载 2013-09-25 15:09:55 · 800 阅读 · 0 评论 -
gcc的几个妙用
gcc的学习在C接触到linux以后就开始不断的学习,也知道了一些基本的用法,但是关于gcc的使用还是有很多值得我们加深的地方。gcc只是一个编译工具而已。也就相当于我们在windows环境下的visual c++等一样,区别是visual c++是基于IDE的,而gcc是这些IDE的基础。学习linux程序设计必然会学习gcc。 gcc实质是完成程序的编译和链接,程序的编译是指从一种文件转载 2014-01-07 17:32:39 · 2199 阅读 · 0 评论 -
关于 "can't identify protocol" 问题的定位
问题定位步骤: 1、 用root帐户 遍历 /proc/进程ID/fd目录,如果该目录下文件数比较大(如果大于10,一般就属于socket泄漏),根据该进程ID,可以确认该进程ID所对应的名称。 2、 重启程序恢复服务,以便后续查找问题。 3、 strace 该程序并记录strace信息。strace –p 进程ID >>/tmp/stracelog.log 2>&1 4、 查看原创 2014-03-05 14:12:31 · 14729 阅读 · 0 评论 -
LINUX socket 在connect的时候发生 Operation now in progress 错误
解决方法:unsigned long ul = 1;ioctl( nSocket, FIONBIO, &ul ); //设置为非阻塞模式 放到connect()后面.原创 2014-03-06 11:51:14 · 26057 阅读 · 0 评论 -
char,short ,int ,long,long long,unsigned long long数据范围
char -128 ~ +127 (1 Byte)short -32767 ~ + 32768 (2 Bytes)unsigned short 0 ~ 65535 (2 Bytes)int -2147483648 ~ +2147483647 (4 Bytes)unsigned int 0 ~ 4294967295 (4 Bytes)long == intlong long原创 2014-03-22 12:07:46 · 1307 阅读 · 0 评论 -
C/C++ 笔试、面试题目大汇总
1.求下面函数的返回值(微软)int func(x) { int countx = 0; while(x) { countx ++; x = x&(x-1); } return countx; } 假定x = 9999。 答案:8思路:将x转化为2进制,看含转载 2014-08-13 18:19:28 · 1035 阅读 · 0 评论 -
C/C++ 笔试、面试题
原创 2014-08-13 18:28:46 · 658 阅读 · 0 评论 -
深入 char * ,char ** ,char a[ ] ,char *a[] 内核
C语言中由于指针的灵活性,导致指针能代替数组使用,或者混合使用,这些导致了许多指针和数组的迷惑,因此,刻意再次深入探究了指针和数组这玩意儿,其他类型的数组比较简单,容易混淆的是字符数组和字符指针这两个。。。下面就开始剖析一下这两位的恩怨情仇。。。 1 数组的本质 数组是多个元素的集合,在内存中分布在地址相连的单元中,所以可以通过其下标访问不同单元的元素。。 2 指针。转载 2014-08-13 18:31:01 · 438 阅读 · 0 评论 -
CRC16 算法及c实现
标准CRC生成多项式如下表: 名称 生成多项式 简记式* 标准引用 CRC-4 x4+x+1 3 ITU G.704 CRC-8 x8+x5+x4+1 0x31 CRC-8 x8+x原创 2014-11-18 16:13:57 · 3765 阅读 · 0 评论