- 博客(21)
- 资源 (3)
- 收藏
- 关注
原创 C程序设计第6 7章
1. 在函数中定义struct结构体变量,可以返回么?、答案:可以原因:在程序中定义的struct变量在return中返回的是该变量的值,就像定义int a, return a一样,返回的是变量a里面的值,而不是该struct的地址。如:struct point { int x; int y;};structpoint new_
2014-03-20 16:50:01
763
原创 第二.三章 类型,操作符和表达式
第二章1. 标识符由字符(包括下划线‘_’)和数字组成,其第一个字符不能是数字,且一般不为‘_’。这是因为以下划线‘_’开头的变量一般用于库函数2.char类型也可以为signed和unsigned两种,unsigned char的范围为0-255,signed char的范围为-128-127。3.字符‘\0’和‘0’字符‘\0’对应的整数值为0,代表空字符;字符'0'对
2014-03-11 23:07:13
693
原创 C程序设计语言——学习记录
第一章1. C语言是值传递,因此被调函数中是无法修改主调函数中传递下来的参数的值;补充信息:除值传递外还有引用传递:&var。这样传递的就是变量的地址,因此可在被调函数中修改该变量的值。2,.extern关键字用于申明外部变量:当全局变量定义在函数的后面,那么,当该函数使用该变量时就需要extern type var_name;来进行申明。当全局变量定义在被
2014-03-11 09:38:55
726
原创 swift之storage node上的object updater的实现
1. Demaon:updater:每个storage node上都有两个updater的后台进程:/usr/bin/python /usr/bin/swift-container-updater /etc/swift/container-server.conf/usr/bin/python /usr/bin/swift-object-updater /etc/
2013-11-22 15:32:59
1211
原创 kmem_cache_free代码注解
内核版本linux3.1kmem_cache_freecode: void kmem_cache_free(struct kmem_cache *s, void *x)//X是要释放的对象{ struct page *page; page = virt_to_head_page(x);//通过x找到该对象所在的slab的首个page slab_free(s, pag
2013-11-02 17:01:36
1862
原创 No space left on device但df显示磁盘未满
问题:在/home目录下创建文件,大约创建了4600000个后就一直失败,显示errno=28,No space left on device.解决过程:[root@redhat172 home]# dfFilesystem 1K-blocks Us
2013-10-21 10:42:58
1218
翻译 NULL和0以及'\0'
NULL is a macro defined in several standard headers, 0 is an integer constant, '\0' is a character constant, and nul is the name of the character constant. All of these are not interchangeable:N
2013-08-29 21:34:45
643
转载 VA_LIST and 系统日志syslog配置信息
一、VA_LIST1. VA_LIST 是在C语言中解决变参问题的一组宏 VA_LIST的用法:(1)首先在函数里定义一具VA_LIST型的变量,这个变量是指向参数的指针(2)然后用VA_START宏初始化变量刚定义的VA_LIST变量,这个宏的第二个参数是第一个可变参数的前一个参数,是一个固定的参数。(3)然后用VA_ARG返回可变的参数,VA_ARG的第二个参数
2013-08-28 20:59:05
1226
原创 socket的shutdown和close
1. 自己写的socket的shutdown和close相关测试编号测试手段测试结果附加测试附加测试结果1shutdown(fd, 0)【不能再读】write成功,shutdown之后netstat显示C和S的状态均为established(没有发送FIN).close后再writeclose后netstat显示server的
2013-07-30 21:29:43
1429
原创 keepalive
1. keepalive:Transmission Control Protocol (TCP) keepalives are an optional feature, and if included must default to off.The keepalive packet contains null data. In an Ethernet network, a keep
2013-07-30 21:26:02
2347
原创 socket验证半连接的代码和测试结果
为了验证C为established状态而S为SYN_RECV状态,写了下面的源程序(在别人的基础上改的)1. 源程序1.1 client#include "head.h"int main(int argc, char **argv){ struct sockaddr_in servaddr; int
2013-07-24 21:29:36
1014
原创 socket的SYN_RECV和ESTABLISHED状态
1. socket的状态1.1 状态说明CLOSED没有使用这个套接字[netstat 无法显示closed状态] LISTEN套接字正在监听连接[调用listen后]SYN_SENT套接字正在试图主动建立连接[发送SYN后还没有收到ACK]SYN_RECEIVED正在处于连接的初始同步状态[收到对方的SYN,但还
2013-07-24 21:05:53
8669
原创 面试2
通知下午3点面试,2:30就到了。然后开始做卷子,很多数据库的SQL语句,其中的除法忘记了。有道shell程序题,空着,不会。求链表的中间节点写strstr函数答毕。 面试:4个人1. ABCDEFG转化为CDEFGAB:字符串的三次反转2.二分查找3.给一个字符串,去掉前后空格,中间空格多于一个的只保留一个。简历中的项目:数据挖掘和毕设
2012-12-28 10:45:56
527
原创 面试1
1. 自我介绍2. 对C、C++、java哪个熟悉?C int strcpy(char *dest, char *src){ intlen, i=0; if(src== NULL) return0; len= strlen(src); if(dest== NULL){ d
2012-12-28 10:40:45
436
原创 面试3
基础架构部 首先自我介绍1. 讲一下毕设的内容,pNFS是什么。最后让我在纸上画了下2. 问我C++学的怎么样,我说上过课,但没做过东西。于是悲剧的一幕开始了:2.1 C++中的static关键字的用法,修饰成员函数时和一般的函数有什么不同2.2 C++中const关键字2.3 C++ map内部的数据结构是怎么样
2012-12-28 10:39:46
407
原创 归并、快排算法的学习
任何基于相邻两个元素之间比较的交换算法,其平均时间复杂度为O(n2)。主要涉及到的是插入、选择和冒泡排序三种。因此为了降低时间复杂度,不再限制比较在仅仅2个相邻的元素间。主要指归并算法、快速排序算法和shell排序。1. 归并排序:将一个序列分为两个长度相等的子序列,对每一个子序列进行排序,再将它们合并成一个序列。合并的过程称为归并。void mergeSort(int a[], int
2012-11-04 22:36:27
575
原创 算法,我开始对你产生好感了
中科院计算所有个教算法的卜东波老师,很NB的人物。主页:http://bioinfo.ict.ac.cn/~dbu/ 听师兄师姐们说他上课有大师的风范,不过最后还是选了其他老师的算法课(因为结课早)。 出于好奇,第一节课还是去旁听了。但坐在比较靠后的位置,看不清楚板书,一开始就没怎么听进去,再加上没过几分钟就开始打瞌睡,所以第一节课感觉一般,不过还是很喜欢他上课的风
2012-11-03 01:41:58
3540
1
原创 最简单的C源程序及i++,++i
最简单的C源程序1: #include2:3: int main()4: {00401010 push ebp00401011 mov ebp,esp00401013 sub esp,48h00401016 push ebx00401017 push
2012-10-28 20:29:30
698
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人