![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c-c++
wabil
这个作者很懒,什么都没留下…
展开
-
[C语言] 链表代码
待续........原创 2022-10-31 11:20:55 · 103 阅读 · 0 评论 -
环形缓冲区(ring buffer),环形队列(ring queue) 原理
1. 序言环形缓冲区(ring buffer),环形队列(ring queue) 多用于2个线程之间传递数据,是标准的先入先出(FIFO)模型。一般来说,对于多线程共享数据,需要使用mutex来同步,这样共享数据才不至于发生不可预测的修改/读取,然而,mutex的使用也带来了额外的系统开销,ring buffer/queue 的引入,就是为了有效地解决这个问题,因其特殊的结构及算法,可以用原创 2015-12-23 13:34:15 · 12833 阅读 · 2 评论 -
CLI (命令行接口) 简易开发
CLI (Command Line Interface) 命令行接口,是底层操作系统必备的工具, 其实它的思路不复杂, 定义一个全局的数组定义整个系统的命令集合, 然后通过注册CLI,撤销CLI等操作对全局数据.在用户入口处加一监听线程, 然后历遍分析输入的数据是否需要属于系统指令.void help_cmd(char *inBuf,int i){}void ver_c原创 2016-04-25 16:14:22 · 7959 阅读 · 0 评论 -
[C] 关闭指定名称的全部进程
bool KillProcess(DWORD pid){ // When the all operation fail this function terminate the "winlogon" Process for force exit the system. HANDLE hYourTargetProcess = OpenProcess(PROCESS_QUERY_INFORMATION | // Required by Alpha PROCESS_CREATE_THREAD .原创 2022-04-13 22:26:57 · 431 阅读 · 0 评论 -
C语言获取指令的附加参数
#include <stdio.h>#include <stdlib.h>//获取指令的附加参数char **get_cmd_params(char *cmd,int *parmCnt){ char **argv; char **rtr; *parmCnt = 0; argv = (char**)malloc(10*sizeof(char *)); for(int i = 0; i < 10; i++) argv[i] = (char*).原创 2021-02-10 22:30:05 · 411 阅读 · 0 评论 -
[C语言]二维指针与一维指针
void test1(char *pt){ pt =(char*)calloc(10,1); memcpy(pt,"Nice_\n",6);}void test2(char**pt){ *pt =(char*)calloc(10,1); memcpy(*pt,"Good_\n",6);}void main(void){ char *point=0;原创 2017-11-02 11:44:09 · 1881 阅读 · 0 评论