里面有完整的注释!!适合学习贪食蛇编程要点1、每次刷屏时需要注意无效矩形区的大小和位置,一般取整条蛇最小坐标和最大坐标组成的矩形(包括蛇的头和身体)2、蛇全身的运行轨迹应该参照蛇头的运行轨迹3、蛇吃下东西之后身体各点的变化情况应该参照第一点的变化,即第一点发生变化之后下一时间段第二点发生变化,再下一时间段第三点发生变化,依此类推,直到最后一点发生变化结束4、分数的计算变量:蛇吃的一般屎数量、蛇吃大屎的数量、游戏的难度级别计算公式:(一般屎数量+大屎数量)*难度级别5、一个问题:游戏的难度设置选项框和主窗口发生数据交换采用了两种方法,发送消息法和读写外部文件法,第三种选择就是采用全局变量,但都不是太好,有没有更合适的方式保证实现该功能的同时不致使程序显得晦涩难懂不易修改和维护
2024/8/12 15:57:30 3.74MB 贪吃蛇源码
1
Msys:1.0.10MinGW:5.1.4make:3.81.90gcc:4.3.2w32api:3.13SDL:1.2.1MinGW-Runtime:3.15MINGW+MSYS环境已经配置完成。
移植到其他电脑上时需要根据情况做修改:若msys文件夹放在D盘根目录下,找到D:\msys\1.0\etc\fstab,以记事本或写字板打开,将以下所示部分改为现在实际所在的路径,即D:/msys/1.0/mingw。
若在C盘,则无需更改。
#Win32_PathMount_Pointc:/msys/1.0/mingw/mingw注意是/,不是\,因为linux下的路径都是用/的。
若电脑上安装了VC++,找到c:\msys\1.0\msys.bat并以记事本或写字板或notepad打开,在第一行添加:call"C:\ProgramFiles\MicrosoftVisualStudio\VC98\Bin\VCVARS32.BAT"双引号内的路径不固定,以VC安装的路径为准。
msys使用技巧:复制:选中一段文字,就将这段文字复制到剪贴板。
粘贴:shift+鼠标左键,就将剪贴板的内容粘贴到命令行了。
参考文章地址:http://blog.csdn.net/bihaichentian/archive/2010/08/20/5826859.aspxFFMPEG-0.6的配置1.解压后拷贝到c:/msys/home/目录下。
(C:/msys/home/ffmpeg-0.6)2.运行c:/msys.bat,进入c:/msys/home/ffmpeg-0.5源码目录,创建release目录(madirrelease)和debug目录(mkdirdebug)目录,视需求编译release或debug版本:3.进入c:/msys/home/ffmpeg-0.5/release目录下执行:../configure--disable-static--enable-shared--enable-small--enable-memalign-hack--enable-gpl--extra-cflags=-I/local/include--extra-ldflags=-L/local/lib5.或进入c:/msys/home/ffmpeg-0.5/debug目录下执行:../configure--disable-static--enable-shared--enable-memalign-hack--enable-gpl--extra-cflags=-I/local/include--extra-ldflags=-L/local/lib--enable-debug=3--disable-optimizations--disable-stripping6.make7.makeinstall
2024/8/12 13:57:15 17.64MB minGW Windows
1
测量软件让APx555和所有其他APx音频分析仪的性能和需求满足音频设计者,工程师和技术人员要求。
自动模式不用编写代码便可设定自动测量程序,适合于自动化测试场合手动模式类似SYS-2722操作软件的手动测试功能,便于快速理解输入与输出的关系。
示波器,频谱仪和其他仪表的参数可以任意设定,适合于研发段测量,特别是对于有音频测量经验的用户更加方便。
2024/8/10 1:27:19 4.69MB AP音频分析
1
ApabiMaker5.0.1.1889专业版完全破解,去除winlicense壳段,运行无需授权文件。
安装时建一个空的文本文件,文件名改成makerkey.lic,即可顺利安装。
安装完毕用破解文件覆盖原文件即可!原版程序不能上传,联系qq5415000获取百度网盘下载地址。
2024/8/9 9:10:44 1.21MB apabi maker 专业版 脱壳
1
老段带你学linux-鸟哥的linux私房菜-基础+服务器篇。
里面配电子书
2024/8/9 6:52:45 66B linux
1
本项目是一个基于安卓的小乖记账理财毕设源码,包括答辩ppt、系统设计与实现文档、开题报告、任务书和完整安卓项目源码。
项目主要由6大模块组成,包括支出记录,收入记录,便签功能,图表统计,账户管理,系统设置等功能,另外还可以自定义收入类型和支出类型,这在安卓记账类的项目里不多见,因为一般项目都是写死的。
另外还有类似支付宝记账单的可以选择时间段展示的基于achartengine引擎的图表功能,这个功能也是在类似项目里不多见的。
www.之前也介绍过很多关于记账理财的项目,不过都没有本项目完美,需要的可以在www.搜索“记账”就可以找到。
2024/8/8 20:56:20 11.34MB 大学生
1
托利多电子秤ScaleManager1.00.0025,托利多电子秤第三方软件,管理价签格式,一键回收电子秤内商品档案,一件下发商品档案等功能!托利多bplus传秤软件标签编辑ScaleManager1.00.0025,向上兼容bocm和rl00系列,3880和3880+也可以用。
主要用来编辑标签格式。
设置好IP段,插上局域网网线,电脑上安装好scalemanager,添加称。
选择标签编辑->smartLabel,选择从…导入,从称导入。
再编辑好标签格式,记住标签号,保存,导出到称。
双击称,选择称,选择称基础配置,通用标签,修改好刚才的标签号,点下发就好了。
2024/7/28 14:19:50 319.94MB ScaleManager1.0 托利多电子秤
1
基于Quartus13.0的EDA实验程序,1.设计一个10进制计数器,用七段数码管显示计数器的数值,以开发板上1个按键作为计数器的时钟输入,按键每按动一次,相当于产生“一个时钟脉冲”,观察开关抖动情况。
2.设计一个去抖电路,按键信号经去抖以后再作为计数器的时钟输入,观察去抖效果。
2024/7/27 11:37:03 3.01MB Verilog
1
第1讲:2015-01-12(进制01)第2讲:2015-01-13(进制02)第3讲:2015-01-14(数据宽度-逻辑运算03)第4讲:2015-01-15(通用寄存器-内存读写04)第5讲:2015-01-16(内存寻址-堆栈05)第6讲:2015-01-19(EFLAGS寄存器06)第7讲:2015-01-20(JCC)第8讲:2015-01-21(堆栈图)第8讲:2015-01-21(宝马问题)第9讲:2015-01-22(堆栈图2)第10讲:2015-01-23(C语言01_后半段)第10讲:2015-01-23(C语言完整版)第11讲:2015-01-26(C语言02_数据类型)第12讲:2015-01-27(C语言03_数据类型_IF语句)第13讲:2015-01-28(C语言04_IF语句逆向分析上)第14讲:2015-01-28(C语言04_IF语句逆向分析下)第15讲:2015-01-29(C语言04_正向基础)第16讲:2015-01-30(C语言05_循环语句)第17讲:2015-02-02(C语言06_参数_返回值_局部变量_数组反汇编)第18讲:2015-02-02(2015-01-30课后练习)第19讲:2015-02-03(C语言07_多维数组)第20讲:2015-02-03(2015-02-02课后练习)第21讲:2015-02-04(C语言08_结构体)第22讲:2015-02-05(C语言09_字节对齐_结构体数组)第23讲:2015-02-06(C语言10_Switch语句反汇编)第24讲:2015-02-26(C语言11_指针1)第25讲:2015-02-27(C语言11_指针2)第26讲:2015-02-28(C语言11_指针3)第27讲:2015-02-28(C语言11_指针4)第28讲:2015-03-02(C语言11_指针5)第29讲:2015-03-03(C语言11_指针6)第30讲:2015-03-04(C语言11_指针7)第31讲:2015-03-06(C语言11_指针8)第32讲:2015-03-09(位运算)第33讲:2015-03-10(内存分配_文件读写)第34讲:2015-03-11(PE头解析_手动)第35讲:2015-03-12(PE头字段说明)第36讲:2015-03-13(PE节表)第37讲:2015-03-16(FileBuffer转ImageBuffer)第38讲:2015-03-17(代码节空白区添加代码)第39讲:2015-03-18(任意节空白区添加代码)第40讲:2015-03-19(新增节添加代码)第41讲:2015-03-20(扩大节-合并节-数据目录)第42讲:2015-03-23(静态连接库-动态链接库)第43讲:2015-03-24(导出表)第44讲:2015-03-25(重定位表)第45讲:2015-03-26(移动导出表-重定位表)第46讲:2015-03-27(IAT表)第47讲:2015-03-27(导入表)第48讲:2015-03-30(绑定导入表)第49讲:2015-03-31(导入表注入)第50讲:2015-04-01(C++this指针类上)第51讲:2015-04-01(C++this指针类下)第52讲:2015-04-02(C++构造-析构函数继承)第53讲:2015-04-03(C++权限控制)第54讲:2015-04-07(C++虚函数表)第55讲:2015-04-08(C++动态绑定-多态-上)第56讲:2015-04-08(C++动态绑定-多态-下)第57讲:2015-04-09(C++模版)第58讲:2015-04-10(C++引用-友元-运算符重载)第59讲:2015-04-13(C++new-delete-Vector)第60讲:2015-04-14(C++Vector实现)第61讲:2015-04-15(C++链表)第62讲:2015-04-16(C++链表实现)第63讲:2015-04-16(C++二叉树)第64讲:2015-04-17(C++二叉树实现)第65讲:2015-04-20(Win32宽字符)第66讲:2015-04-21(Win32事件-消息-消息处理函数)第67讲:2015-04-22(Win32ESP寻址-定位回调函数-条件断点)第68讲:2015-04-23(Win3
2024/7/27 6:10:04 79B 滴水三期 汇编 C语言 C++
1
(1)创建生产者和消费者线程在Windows2000环境下,创建一个控制台进程,在此进程中创建n个线程来模拟生产者或者消费者。
这些线程的信息由本程序定义的“测试用例文件”中予以指定。
该文件的格式和含义如下:31P32P43C414P25C3124第一行说明程序中设置几个临界区,其余每行分别描述了一个生产者或者消费者线程的信息。
每一行的各字段间用Tab键隔开。
不管是消费者还是生产者,都有一个对应的线程号,即每一行开始字段那个整数。
第二个字段用字母P或者C区分是生产者还是消费者。
第三个字段表示在进入相应线程后,在进行生产和消费动作前的休眠时间,以秒计时;
这样做的目的是可以通过调整这一列参数,控制开始进行生产和消费动作的时间。
如果是代表生产者,则该行只有三个字段。
如果代表消费者,则该行后边还有若干字段,代表要求消费的产品所对应的生产者的线程号。
所以务必确认这些对应的线程号存在并且该线程代表一个生产者。
(2)生产和消费的规则在按照上述要求创建线程进行相应的读写操作时,还需要符合以下要求:①共享缓冲区存在空闲空间时,生产者即可使用共享缓冲区。
②从上边的测试数据文件例子可以看出,某一生产者生产一个产品后,可能不止一个消费者,或者一个消费者多次地请求消费该产品。
此时,只有当所有的消费需求都被满足以后,该产品所在的共享缓冲区才可以被释放,并作为空闲空间允许新的生产者使用。
③每个消费者线程的各个消费需求之间存在先后顺序。
例如上述测试用例文件包含一行信息“5C3l24”,可知这代表一个消费者线程,该线程请求消费1,2,4号生产者线程生产的产品。
而这种消费是有严格顺序的,消费1号线程产品的请求得到满足后才能继续往下请求2号生产者线程的产品。
④要求在每个线程发出读写操作申请、开始读写操作和结束读写操作时分别显示提示信息。
(3)相关基础知识本实验所使用的生产者和消费者模型具有如下特点:本实验的多个缓冲区不是环形循环的,也不要求按顺序访问。
生产者可以把产品放到目前某一个空缓冲区中。
消费者只消费指定生产者的产品。
在测试用例文件中指定了所有的生产和消费的需求,只有当共享缓冲区的数据满足了所有关于它的消费需求后,此共享缓冲区才可以作为空闲空间允许新的生产者使用。
本实验在为生产者分配缓冲区时各生产者间必须互斥,此后各个生产者的具体生产活动可以并发。
而消费者之间只有在对同一产品进行消费时才需要互斥,同时它们在消费过程结束时需要判断该消费对象是否已经消费完毕并清除该产品。
Windows用来实现同步和互斥的实体。
在Windows中,常见的同步对象有:信号量(Semaphore)、互斥量(Mutex)、临界段(CriticalSection)等。
使用这些对象都分为三个步骤,一是创建或者初始化:接着请求该同步对象,随即进入临界区,这一步对应于互斥量的上锁;
最后释放该同步对象,这对应于互斥量的解锁。
这些同步对象在一个线程中创建,在其他线程中都可以使用,从而实现同步互斥。
2024/7/25 19:35:19 1.63MB 多线程同步生产者和消费者问题
1
共 696 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡