11 2018 档案
摘要:1、ubuntu18.04下,ibus框架中文输入法,无法通过数字选字了,只能直接回车选择第一个字。 出问题后,可以鼠标点选从中文->英文->中文,作一次切换,再尝试一次,出现同样的问题 解决办法:把 ~/.cache/ibus/ibus-libpinyin 删掉后,重启了ubuntu,问题消失了。
阅读全文
摘要:【gcc】: 1、编译四步骤: 预处理:gcc -E test.c -o test.i 编译: gcc -S test.i -o test.s 汇编: gcc -c test.s -o test.o 连接: gcc test.o -o test.out 2、指定输出文件名称:gcc test.c -
阅读全文
摘要:数组有如下用法:例如: int name[10]={0};作为右值:name本身可以作为数组首元素的地址,等同于&name[0],取数组第一个元素的地址。可以明确的是,name即使有意义,也是作为指针存在,而不是代表整个数组作为左值:name不能作为左值。有的资料说,不能作为左值,是因为name作为
阅读全文
摘要:首先,介绍数据类型的对齐方式,例如在64位平台上1、基础数据类型 在内存中的对齐方式: int=unsigned int: 4字节 char=unsigned char: 1字节 short=unsigned short:2字节 long: 8字节 float: 4字节 double: 8字节 en
阅读全文
摘要:函数的参数、局部变量、返回值的思考,是基于以前的编码过程中出现的问题,做的文字性总结,少量代码做补充!在进行以下之前,先述说下函数的运行及调用: 很少有哪个完整的程序,是在一个func中完成所有的功能而不调用其他函数接口的。函数接口的功能,要紧凑且单一化,便于代码模块化及分析维护 如:main()-
阅读全文
摘要:/* 递归: 【逆序】从未知点推到已知点,【顺序】代入已知点结果,从已知点带入并计算到未知点,最终到终点 尾递归: 从起点开始,依顺序计算结果,并无限靠近最终目标点 迭代: 从起点开始,依顺序计算结果,并无限靠近最终目标点 以如上的三种方式,实现斐波拉契数列 计算 斐波拉契数列: 0, 1, 1,
阅读全文
摘要:树 | :由 一个根结点 和 N个子结点 及 连接线 构成,任意结点间不构成回路 | 二叉树 | :树的一种,且任意结点最多只能有两个子结点 | | 完美二叉树:满足h层二叉树的最大结点树 | | 完全二叉树:在完美二叉树的基础上,做减法。最下一层从右到左依次去掉多个结点。【1、必须依次去掉 2、全
阅读全文
摘要:/* 广度优先遍历的实现: 与深度优先遍历比较,将栈换成了队列。同时,修改了部分bug:增加函数返回值的判断操作*/#include <stdio.h>#include <stdlib.h>#include <string.h>#define QElemType unsigned inttypede
阅读全文
摘要:/* 深度优先搜索的实现: 关于深度优先遍历,找不到最短路径,暂时未作分析,容后补上,以作记录 补充如下:举例如迷宫问题,都是遍历,譬如深度优先遍历、广度优先遍历。但深度优先可以最快速度找到出口,而广度优先遍历花的时间则更多; 但深度优先遍历,不一定找到最优(最短)路径,而广度优先遍历则一定能找到最
阅读全文
摘要:/* 链式队列 初始化 入队列 出队列 取队列头数据 计算队列有效长度 清空队列 销毁队列 原创代码,用于学习。引用请注明,有问题协商共学习*/#include <stdio.h>#include <stdlib.h>#include <string.h>#define ElemType intty
阅读全文
摘要:/* 链式栈的实现:之前的代码,再free后没有对指针赋空值,以下代码作了添加,后续抽时间对之前的代码作 【释放后的指针赋空】 修改 初始化 入栈 出栈 计算栈的有效数据长度 获取栈顶数据 清空栈 销毁栈 代码均属原创,有借鉴,有优化。有错误请指出,欢迎探讨学习*/#include <stdio.h
阅读全文
摘要:/* 顺序栈的实现: 初始化 入栈 出栈 计算栈的有效数据长度 获取栈顶数据 清空栈 销毁栈*/#include <stdio.h>#include <stdlib.h>#define ElemType inttypedef struct __stackInfo{ ElemType *pData;
阅读全文
摘要:/* 顺序表队列 初始化 入队列 出队列 取队列头数据 计算队列有效长度*/#include <stdio.h>#include <stdlib.h>#define QElemType unsigned inttypedef struct __QueueInfo{ int *data; QElemT
阅读全文
摘要:/* 双向循环链表:在单向循环链表的基础上修改 初始化 前向插入 后向插入 打印 链表长度 清空 销毁*/#include <stdio.h>#include <stdlib.h>#define itemType inttypedef struct node{ itemType data; stru
阅读全文
摘要:/* 单向循环链表: 初始化 插入 打印 链表长度 清空 销毁 在单向非循环链表的基础上作的修改;同时,对指针作了较全面的判空处理:防止malloc申请资源,资源为用到却无法释放 */#include <stdio.h>#include <stdlib.h>#define itemType intt
阅读全文
摘要:/* 单向非循环链表: 初始化 前插入 后插入 打印 链表长度 清空 销毁*/#include <stdio.h>#include <stdlib.h>#define itemType inttypedef struct node{ itemType data; struct node *pNext
阅读全文
摘要:#include <stdio.h>int halfIntervalSearch(int *p, unsigned int len, int num){ unsigned int highSN = len-1; unsigned int lowSN = 0; unsigned int midSN =
阅读全文
摘要:引自:https://www.cnblogs.com/xjx-user/archive/2012/11/30/2796583.html > 预处理器(Preprocessor) 1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_P
阅读全文
摘要:看竖线中间的部分,竖线将复杂的表达式截断,即用复杂指针的分析法作截断处理int (*(*func)[5][6])[7][8]; | a | | b || c |a: (*func) 即func是个指针b: func是个二维数组的指针[5][6],该二维数组的元素是指针类型c: func是个二维数组的
阅读全文
摘要:转自https://www.cnblogs.com/big_sky/archive/2010/02/04/1663890.html 右左法则是一个既著名又常用的方法。不过,右左法则其实并不是C标准里面的内容,它是从C标准的声明规定中归纳出来的方法。 C标准的声明规则,是用来解决如何创建声明的,而右左
阅读全文
摘要:冒泡算法: 外围for控制大循环需N次, 内存控制每次大循环需比对M次。 因每次大循环,均挪移一个最大(最小值)到Table首或Table尾,因此下一个大循环则比前一次少一个循环(下一个循环挪移【第二大】or【第二小】到对应位置) #include <stdio.h>void printTable(
阅读全文
摘要:注:有序插入:则根据xItemValue值从小到大(MAX:0xFF),排序插入 无序插入:按照插入的时间先后顺序,从第一个节点到最后一个节点(vListEnd),依次插入 有序插入的执行时间较长,先后顺序即代表了执行的顺序,如CurrentTimerList上的当前节点,就是将最先执行的节点 无序
阅读全文
摘要:代码如下:关注点标注为红色,标记为 再继续分析-20181108 void vTaskDelayUntil( TickType_t * const pxPreviousWakeTime, const TickType_t xTimeIncrement ) { TickType_t xTimeToWa
阅读全文

浙公网安备 33010602011771号