编程方法和代码
陈海平20220310
希望以后一周一篇。内容大部分为自己工作需要,参考别人的文章加自己查询资料所总结
展开
-
C语言中常用操作
结构体相关①:取结构体中的结构体指针操作示例如下:typedef struct{ int a; char data[32];}DataInfo_t; //单个用户信息的结构体typedef struct{ int MaxDataNum; //最大用户数量 int DataNum; //实际用户数量 DataInfo_t* pData;}DataList_t; //所有的用户信息结构体取DataList_t结构体中的pData数据static DataList_t g_Dat原创 2022-05-25 10:00:24 · 176 阅读 · 0 评论 -
JSON之数组类
cJson两种解析数组的方法cJSON_GetArraySize(cJSON *);cJSON_GetArrayItem(cJSON *, int);解析数组类一:像以上格式的数据解析可以使用如下方式:cJSON *ip_arry = cJSON_GetObjectItem( clientlist, "iplist"); //clientlist 是使用 cjson对象if( NULL != ip_arry ){ cJSON *client_list = ip_arry->c原创 2022-05-05 16:20:52 · 1479 阅读 · 1 评论 -
代码之回调函数的用法一
使用场景在回调某些数据(如:一个int型变量),还需要其他数据。可以在注册回调的时候把锁需要的数据封装为一个结构体,转为void *类型传输。注意:在哪个文件调用数据,就在那里定义函数指针。代码处理(伪代码)- 1、文件2的头文件typedef void (*CallbackProc)(int A, void *B); //函数指针typedef struct { CallbackProc pProc; void *UserData;}CallBack_t;void ProcAtt原创 2022-04-16 14:01:17 · 402 阅读 · 0 评论 -
代码之字符串转cJSON
cJSON的使用json的数据结构//c中没有对象,所以json数据是采用链表存储的 typedef struct cJSON { struct cJSON *next,*prev; // 数组 对象数据中用到 struct cJSON *child; // 数组 和对象中指向子数组对象或值 int type; // 元素的类型,如是对象还是数组 char *valuestring; /原创 2022-03-31 20:30:13 · 1436 阅读 · 0 评论 -
IO复用循环服务器例子1
#include <stdio.h>#include <string.h>#include <pthread.h>#include <time.h>#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#define BUFFLEN (1024)#define SERVER_PORT (8899) //服务端端口#defi原创 2022-03-15 20:56:45 · 98 阅读 · 0 评论 -
代码之回调函数
回调函数就是一种把双向依赖改为单向依赖的好办法。函数指针void fun1(void){ printf("This is fun1\n");}int main(void){ void (*p)(void); //函数指针,(只能指向无参数、无返回值的函数) void (*p1)(int, int); //函数指针,(指向有两个int型参数、无返回值的函数) char (*p2)(int); //函数指针,(指向int型参数、返回char型的函数) void *(*p3)(i原创 2022-03-12 14:46:16 · 187 阅读 · 0 评论