cwb(CoWeb)一个轻量级,快速的C语言网络框架。
特性:异步IO支持事件驱动库数据序列化、编码支持示例代码/*事件驱动库*/Cwb_Evet_Base*base=cwb_evet_ew();assert(base);assert(!cwb_evet_watch_fd(base,serverSocket,CWB_EVENT_READ,sockethadler,NULL));cwb_evet_loop(base);cwb_evet_destroy(base);/*数据结构*/#iclude<stdio.h>#iclude<stdlib.h>#iclude<strig.h>#iclude<assert.h>#iclude<cwb/Ds.h>#iclude"Test.h"itmai(void){Cwb_Ds*dic=cwb_ds_ew(CWB_DS_DICTIONARY,CWB_DS_SKEY);assert(dic);cwb_ds_set(dic,"I","Suote127");cwb_ds_set(dic,"you","User");cwb_ds_set(dic,"he","Ukow");puts(cwb_ds_get(dic,"he"));puts(cwb_ds_get(dic,"you"));puts(cwb_ds_get(dic,"I"));cwb_ds_set(dic,"I","Theprogrammer");puts(cwb_ds_get(dic,"I"));cwb_ds_set(dic,"you",CWB_DS_UNDEFINED);assert(cwb_ds_get(dic,"you")==CWB_DS_UNDEFINED);cwb_ds_destroy(dic);retur0;}/*动态字符串*/#iclude<assert.h>#iclude<stdio.h>#iclude<stdlib.h>#iclude<strig.h>#iclude<cwb/Dstr.h>itmai(void){chartemp[1024];fgets(temp,1024,stdi);temp[strle(temp)-1]='\0';Cwb_Dstr*dstr=cwb_dstr_ew();assert(dstr);assert(cwb_dstr_assig(dstr,temp));Cwb_Dstr*copy=cwb_dstr_copy(dstr);char*s=cwb_dstr_covert(dstr,NULL,0);puts(s);char*t=strdup(s);cwb_dstr_appedd(dstr,&t);assert(!t);cwb_dstr_appedc(dstr,':');cwb_dstr_appedc(dstr,')');free(s);s=cwb_dstr_covert(dstr,NULL,0);puts(s);cwb_dstr_destroy(dstr);free(s);cwb_dstr_appeds(copy,":)");s=cwb_dstr_covert(copy,NULL,0);puts(s);free(s);retur0;}










评论