C++
文章平均质量分 75
CG李大仁
https://github.com/limccn/
展开
-
操作系统 模拟可变分区内存管理实验 C语言描述
操作系统 模拟可变分区内存管理实验 C语言描述《知识共享协议》下修改、传播、发行,如需网络转载请保留作者注释调试环境 GCC , Borland Turbo C , MS VC++/**/--------------------------------------------------------------------------------------- 版权声明:- 如在本页面内无特别说明原创 2016-08-16 10:37:48 · 2745 阅读 · 0 评论 -
[算法]操作系统进程通信(预防死锁)算法 Dijkstra银行家算法 C语言实现
今天完成昨天的算法,银行家算法,这个大家如果知道操作系统这门课程的话应该会明白,昨天一直忙于复习,今天也是,不过下午还是完成了基本调试,调试环境GCC和TC,现在我把代码奉献给大家银行家算法说明:最早由算法大师 迪杰克斯拉 (Edsger Dijkstra) 提出,银行家算法,顾名思义,它的原理来源于银行系统的存贷款发放管理,即银行(系统)要将一定的款项(资源)贷款(分配)给N个人(进程),当然不原创 2016-08-16 10:39:07 · 1424 阅读 · 0 评论 -
求二维数组的全排列组合,二位数组的自乘积问题
CG在ETP基地的培训也有一段时间了,这期间也有几次考试,下面将要分享的是最近一次笔试的考试题目,该题算是JAVA考试的附加题,要求也很简单,下面是原题二维数组的长度和初始值均由输入确定,如何求出此数组的全排列组合,即:int a[X][X] = {{X,X,X},...}如下int a[3][3] = {{1,2,3},{4,5,6},{7,8,9}}或者是 int a[4][4] = {{1,原创 2016-08-16 10:40:45 · 4276 阅读 · 0 评论 -
使用递归位运算实现对字节的中心转置反转
字节的中心转置反转,这是一道的IBM技术面试题,供参考原题如下:给定一个任意字节长度的数据(以一个Byte为例),要求实现数据的位中心翻转,也就是数据的对称位数据交换,比如:1010 1100 -> 0011 01011111 1111 -> 1111 11110000 0000 -> 0000 00001111 0000 -> 0000 1111解题思路也很简单,只要使用位运算实现以下的位变化即原创 2016-08-16 10:40:50 · 429 阅读 · 0 评论 -
iOS开发之Objective-c的MD5/SHA1加密算法的实现
Objective-c实现MD5和SHA1算法相对还是比较简单的,可以直接调用系统的C/C++共享库来实现调用MD5即Message Digest Algorithm 5(信息-摘要算法 5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一SHA即Secure Hash Algorithm(安全散列算法) 是美国国家安全局 (NSA) 设计,美国国家标准与技术研究院 (NIST) 发布的原创 2016-08-16 10:41:04 · 288 阅读 · 0 评论 -
iOS开发之Objective-c几种不同的随机数算法(arc4random,random,srandom)
Objective-c并没有直接提供随机数据生成的函数或方法,不过我们可以直接利用c的各种随机算法以下是几种常见的随机数算法的使用,可以参照以下头文件stdlib.harc4random 不需要随机种子,在调用时自动生成随机种子返回[0,X)的集合int value = arc4random() % x; 返回[1,X]的集合int value = (arc4random() % x) + 1;原创 2016-08-16 10:41:10 · 983 阅读 · 0 评论 -
[iOS]Xcode5下使用Makefile编译找不到GCC
Xcode5已经完全抛弃了GCC并切换到LLVM,但并不是完全去除GCC,只是对GCC等编译相关执行文件的位置进行了调整,如果之前使用的是使用Makefile方式命令行编译iOS APP的话,Xcode4.6下编写的脚本可能会无效,需要对GCC的执行文件路径进行调整。调整内容如下Xcode4.6之前:/Applications/Xcode.app/Contents/Developer/Platfo原创 2016-08-16 10:42:54 · 1070 阅读 · 0 评论 -
[iOS]Makefile交叉编译静态库TA-lib
为了使Cocoa-Charts支持客户端数据计算,需要为Cocoa-Charts增加技术分析数据计算功能,目前比较通用的是TA-lib,但是TA-lib没有提供iOS版本的静态库文件,因此需要在X86平台上交叉编译适用于iPhone模拟器和iPhone真机的TA-lib静态库,用于调试和开发iOS应用程序,使TA-lib支持ARMv7 ARMv7s i386等系统架构的多种iPhone机型或模拟器原创 2016-08-16 10:42:57 · 2026 阅读 · 0 评论 -
w_char*和char *转换宽窄字符
w_char*和char*在windows编程过程中进行转换是经常需要的,通常由互联网我们取到都是utf-8编码,到windows应用程序里面却需要用unicode编码。一开始用stdlib.h 下wcstombs_s和mbstowcs_s的代码实现,发现总是转换失败和出错。char 转 WCHAR 、wchar_t、LPWSTR ,窄字符转宽字符,C++代码//+----------------原创 2016-08-16 10:44:56 · 2193 阅读 · 0 评论 -
[算法]简单的背包问题递归解法,C语言实现
今天讲点简单的算法,最简单的背包0算法,使用了递归的方法,相信看完代码的朋友会发现这段代码很熟悉,不过CG提供这些代码的目的只是让全部背包算法的完整提供地给大家,代码很简单,相信高手一看就懂,这里的背包算法只是考虑了物品的重量,没有考虑物品的价值,是初学递归算法的朋友必看的代码,高手的话全当复习一下吧。因为CG最近要考试了,一口气要考6门,所以博客更新没有这么快了,请大家见谅不过我还是会保持每天提原创 2016-08-16 10:39:04 · 10037 阅读 · 2 评论 -
[算法]背包问题的动态规划算法解答,C语言实现
今天继续背包问题相关解法,主要内容:动态规划想到这个解法是想到了前几天的一道软考软件设计师考试的下午算法考题,我是参加者,内容大概如下:通常每种食物往往有不同的营养价值,顾客往往需要一种算法实现用最少的花费获得最高的营养价值,(食物不重复),现在要求在花费N元钱获得最大营养价值分析:相信求解的原理不用说了,背包问题,软考的题录使用的是动规算法,跟今天的主题相关,那我们看下面的代码吧。本题动规解法的原创 2016-08-16 10:38:51 · 1685 阅读 · 0 评论 -
C语言,自己当年编写的苹果(黑白)棋源程序代码
今天整理自己的文档,发现自己当年做一些的C语言程序,现在与大家分享程序一、黑白棋程序,当年最早在mac上出现的小游戏,也就是俗称的苹果棋游戏,小时候没玩过?自己调试玩玩看看调试环境 :GCC ,TC需要BGI驱动支持,调过c语言的应该知道吧代码如下(只提供AI部分):完整地址www.lidaren.com/code/WBchess.c.txtint cal(char z){ int *p=0;in原创 2016-08-16 10:38:10 · 1861 阅读 · 1 评论 -
两款用C语言编写的学生信息成绩管理系统
两款C语言编写的学生信息成绩管理系统,以前上C语言实习课编写源程序,时间记不得了现提供给初学者使用。要求:学生信息或者成绩进行管理的系统,要求有新建、增加、删除、修改、排序功能C语言或者C++编写,自己定义数据结构,使用模块化编程,要求使用链表或者数组进行操作实习学生信息成绩管理系统1 完整程序源代码(下载地址)右击另存说明:使用链表作为主要的数据结构使用,可以求出学生的总分跟个人的成绩排名,要求原创 2016-08-16 10:38:15 · 4158 阅读 · 0 评论 -
[算法]两种字符串匹配算法(索引法,KMP算法)对比,C语言实现
今天做了个一个简单的字符对比程序,功能是实现从A串删除包含B最多的字符的操作,比如A=“aaaaabbbbbbabababa” B=“aaccbaab”,应当删除“aab”的,不是aa,相信知道搜索引擎的朋友肯定是知道的吧,这种算法主要用于去除页面中无效的关键字,来减少收录的计算消耗的一种方法,好了,具体算法明天拿出来吧,不过今天要讲的是两种比较常用的字符串匹配算法,KMP算法,索引法KMP算法原创 2016-08-16 10:38:24 · 2118 阅读 · 0 评论 -
[算法]用两种求质数的算法(穷举法,筛选法),C语言实现
今天考试的题目是记不得了,等题目公开了再给大家分析,今天讲点经典的算法,求质数,相信很多人还是记得当年的穷举法了吧,就是不断的让每一个数除以一个小于他的数最大到sqrt(N),然后得出结果,算法时间复杂度O(N^2),优化过的算法O(N * sqrt(N)),经典的算法我就不讲了,初学者如果不懂的话,可以留言,或者跟我联系代码如下:/*求质数的经典方法,穷举法*author CG*2008 12原创 2016-08-16 10:38:32 · 3832 阅读 · 0 评论 -
求在10000范围内的所有质数,要求其的值等于两个质数的平方和
一条学校的ACM演练题目,很让人郁闷今天之所以想讲关于求质数的算法,完全跟这条题目有关,看到题目的朋友一定现在已经有了思路了吧,不过下面的讲解会让你很郁闷,hoho,带上你的思维,跟着我来第一,分析题目 排除10000以内,就是求一个质数满足其的值等于两个质数的平方和就是要满足K= A^2 + B^2 这个要求,其中A,B是质数,K当然是要求的质数,那好解法可以这样求一个质数,然后再求出另一个不同原创 2016-08-16 10:38:34 · 842 阅读 · 0 评论 -
[算法]经典算法8皇后(N皇后)问题的解法,C语言实现
今天写点简单的,C语言求解八皇后问题,相信学过C语言的朋友一定知道这个经典问题吧,解法也是多种,目前主要有回溯,递推两种方法,今天讲回溯+递归的求法,效率可能不太高,不过直接易于理解问题 : 能不能在一个标准的国际象棋棋盘上放8个皇后,使她们相互之间不能互吃具体点就是,在一个8*8的棋盘上放皇后,皇后是所有方向上都可以移动的,现在要让她们不能互吃的话就要使得她们不会在同一条线上具体解法:从第一行第原创 2016-08-16 10:38:37 · 5625 阅读 · 1 评论 -
操作系统,模拟进程管理之PCB块管理法,C语言实现
首先大家祝福平安夜快乐啊,今天要发布的代码是一款C语言编写的模拟操作系统管理进程的程序调试环境TC,使用了PCB进行进程管理控制,建立三个基本的队列:等待、执行、阻塞进行模拟操作系统的进程管理,模拟进程的调度,模拟用户的创建、执行、阻塞、挂起、唤醒等操作最近要准备准备操作系统考试,所以放一个程序跟大家分享代码如下:/**yctc cg*/#include "stdio.h"#include "do原创 2016-08-16 10:38:42 · 4635 阅读 · 0 评论 -
[C语言教程]指针转换方式实现C语言的指针操作安全代码
今天讲点比较枯燥的理论知识,关于C语言的安全指针,如果你习惯于用C语言,那么会知道C语言的指针操作是很不安全的,但是这反而是C语言的特色之一,同时增强了C语言的灵活性和高效性,我本人也是比较偏爱于C语言的,并不是C++或者其他语言在算法方面不行,而是C语言的算法表述更加易于理解和运行更加高效,往往专家编程或者高效编程会采用C或者它的发展C++,但是对于初学者来说,要正确运用好C尤其是它的指针确实比原创 2016-08-16 10:38:48 · 507 阅读 · 0 评论 -
MT4使用MQL连接Redis的插件
工作中需要将MT4的数据读取并且存储到Redis数据库中去,同时MT4读取Redis当中的数据用于下单的切换账户。MT4支持使用MQL进行开发,通过调用标准的系统DLL实现系统调用,因此技术实现并不是太难,只需要按MQL的接口要求编写相应的CPP代码编译成DLL即可实现所需要的功能。在Windows平台上,连接Redis的客户端选用Hiredis作为连接客户端lib。MT4 连接Redis 头文件原创 2016-08-16 10:45:06 · 3612 阅读 · 0 评论