c语言获取HTTP响应报文中的状态码

如从 “HTTP/1.1 200 OK”  中获取200。

//buf 模拟响应头
char buf[]="HTTP/1.1 200 OK";

int code=-1;
char *p=strstr(buf,"HTTP/");
if(p)
    sscanf(p,"%*s %d",&code);    

通过strstr(str1,str2)函数判断HTTP/是不是buf的子串,如果是,返回HTTP/在buf中首次出现的地址,没有的话,返回NULL。

sscanf函数,以buf为输入数据按照"%*s %d"的格式,格式化输入数据,将结果存储到code变量中。

*s表示字符串会被忽略,不会被获取,%d表示获取数字。

发布了133 篇原创文章 · 获赞 175 · 访问量 15万+

猜你喜欢

转载自blog.csdn.net/c_shell_python/article/details/100030309