六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 35|回复: 0

一段看了半天的C代码

[复制链接]

升级  76%

6

主题

6

主题

6

主题

童生

Rank: 1

积分
38
 楼主| 发表于 2013-1-26 12:37:01 | 显示全部楼层 |阅读模式
今天看了一下mini_httpd的代码,有一行代码怎么就是看不明白,最后查来查去,自己调试了以下才总算明白,特地记下,主要是没一开始真没想到012是八进制数,其实0开头的就是表示是八进制,c和java都是这样的
path = strpbrk( method_str, " \t\012\015" );//找到四个字符出现的第一个位子 *path++ = '\0';//置为空 path += strspn( path, " \t\012\015" );//跳过这些字符// \012 = \n// \015 = \r

附上从http请求中读一行数据的代码
static char*get_request_line( void )    {    int i;    char c;    for ( i = request_idx; request_idx < request_len; ++request_idx ){c = request[request_idx];if ( c == '\012' || c == '\015' )    {    request[request_idx] = '\0';    ++request_idx;    if ( c == '\015' && request_idx < request_len && request[request_idx] == '\012' ){request[request_idx] = '\0';++request_idx;}    return &(request[i]);    }}    return (char*) 0;    }
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表