一段看了半天的C代码

今天看了一下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;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值