- 博客(4)
- 收藏
- 关注
原创 结构体成员偏移量
今天在研究计算C语言中,结构体成员的偏移量问题。发现一个宏定义就可以计算得到,在这里记录一下。#define offsetof(type, field) (long)&(((type*)0)->field)其含义是:在不生成结构体实例的情况下计算结构体成员的偏移量。 结构体变量的某成员的地址等于该结构体变量的基址加上结构体成员变量在结构体中的偏移量 (type*)0,就是假设地址0处存放
2015-07-28 17:01:42 1101
转载 Socket收发数据浅析
作为一个套接字描述符,它拥有两个缓冲区,分别为接收数据缓冲和发送数据缓冲区,当套接字有数据到达时,首先进入的就是接收数据缓冲区,然后应用程序从这个缓冲区中将数据读出来,这就是套接字recv的过程,应用程序调用send发送数据实际是把数据拷贝到发送数据缓冲区,再由系统在缓冲区的数据发送出去。缓冲区的大小可以用SetSocketOpt()设定,同时操作系统对它有一个默认大小。 当套接字接受数据缓冲区满
2015-07-25 15:28:28 2116
转载 linux 下svn 命令详解
最近要用到linux下的svn,简单学习了一下,这里做个总结。1、Linux命令行将文件checkout到本地目录svn checkout url(url是服务器上的目录)例如:svn checkout svn://192.168.1.1/pro/domain 简写:svn co 注:这里一般是下载自己需要的,或者有权限的所有目录,以便以后自己在相应目录下做修改,以及内容的提交2、Linux命
2015-07-14 19:40:12 541
原创 assert(0)的作用
今天在看框架例子的代码里,发现很多地方没有做什么,就只是错误检查,然后后面就会跟一个assert(0),比较奇怪这个用意,所以特意差了一下记录在这里。定义assert宏的原型定义在#include <assert.h>void assert( int expression );assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,
2015-07-08 15:46:09 15480
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人