//测试通过#include#include#includetypedefunsignedintuint;typedefunsignedcharbyte;//包文件中最大可容纳的文件个数#defineMAX_FILE_COUNT10//全局包文件指针FILE*g_pMasFile=NULL;//资源包文件头结构typedefstructSMaseFileHeader{uintuFileFlag;//包文件头标记:'MASE'uintuFileCount;//包内文件个数uintuFileListOfs;//文件列表偏移uintuMaxFileCount;//最大子文件个数uintuFileSize;//包文件的大小}MaseHeader;//包内文件信息结构typedefstructSFilesMessage{uintuFileOfs;//本文件在包内的偏移uintuFileSize;//本文件的大小charszFileName[260];//本文件的路径}FilesMsg;//打开包文件
2016/11/1 12:01:14 34KB c语言
1
《Linux多线程服务端编程:使用muduoC++网络库》主要讲述采用现代C++在x86-64Linux上编写多线程TCP网络服务程序的主流常规技术,重点讲解一种适应性较强的多线程服务器的编程模型,即oneloopperthread。
目录第1部分C++多线程系统编程第1章线程安全的对象生命期管理31.1当析构函数遇到多线程............................31.1.1线程安全的定义............................41.1.2MutexLock与MutexLockGuard....................41.1.3一个线程安全的Counter示例....................41.2对象的创建很简单...............................51.3销毁太难....................................71.3.1mutex不是办法............................71.3.2作为数据成员的mutex不能保护析构...............81.4线程安全的Observer有多难.........................81.5原始指针有何不妥...............................111.6神器shared_ptr/weak_ptr..........................131.7插曲:系统地避免各种指针错误.......................141.8应用到Observer上..............................161.9再论shared_ptr的线程安全.........................171.10shared_ptr技术与圈套............................191.11对象池.....................................211.11.1enable_shared_from_this......................231.11.2弱回调.................................241.12替代方案....................................261.13心得与小结...................................261.14Observer之谬.................................28第2章线程同步精要2.1互斥器(mutex)...............................322.1.1只使用非递归的mutex........................332.1.2死锁..................................352.2条件变量(conditionvariable)..........
2016/11/27 9:54:01 140.94MB Linux 多线程 服务端
1
《InsideTheC++ObjectModel》专注于C++对象导向程序设计的底层机制,包括结构式语意、暂时性对象的生成、封装、继承,以及虚拟——虚拟函数和虚拟继承。
这本书让你知道:一旦你能够了解底层实现模型,你的程序代码将获得多么大的效率。
Lippman澄清了那些关于C++额外负荷与复杂度的各种错误信息和迷思,但也指出其中某些成本和利益交换确实存在。
他阐述了各式各样的实现模型,指出它们的进化之道及其本质因素。
本书涵盖了C++对象模型的语意暗示,并指出这个模型是如何影响你的程序的。
本书重点:探索“对象导向程序所支持的C++对象模型”下的程序行为。
对于“对象导向性质之基础实现技术”以及“各种性质背后的隐含利益交换”提供一个清楚的认识。
检验由程序变形所带来的效率冲击。
提供丰富的程序范例、图片,以及对象导向观念和底层对象模型之间的效率测量。
C++成山似海的书籍堆中,这一本不是婴幼儿奶粉,也不是较大婴儿奶粉,它是成人专用的低脂高钙特殊奶粉。
对于C++底层机制感兴味的读者,这本书会给你“漫卷诗书喜欲狂”的感觉。
了解C++ObjectModel,是学习ComponentObjectModel的最短路线。
如果你是一位C++程序员,渴望对于底层知识获得一个完整的了解,那么InsideTheC++ObjectModel正适合你。
关于作者:StanleyLippman目前是华特迪斯尼主题动画公司(WaltDisneyFeatureAnimation)的主要软件工程师。
他曾经在AT&T贝尔实验室领导cfront3.0和2.1版的编译器开发小组。
他也是贝尔实验室中由BjameStroustrup所领导的Foundation专案组中的一员,负责对象模型并研究C++程序开发环境。
Stan著有极为成功的C++Primer一书,也发表过许多C++方面的论文。
Stan最近刚从C++Report的编辑位置上“退隐”,他曾在那个位置上做了4年。
他的C++论述遍及全球。
关于译者:侯捷,海峡两岸著名的电脑技术自由作家,对于技术的钻研和发表,有独特的品性与坚持。
作品涵盖著、译、评三方面,散见于各种刊特、媒体、网站论坛,深受读者喜爱和尊敬。
作者简介:StanleyB.Lippman的职业是提供关于C++和面向对象的训练、咨询、设计和指导。
他在成为一名独立咨询顾问之前,曾经是迪士尼动化公司的首席软件设计师。
当他在AT&TBell实验室的时候,领导了cfront3.0版本和2.1版本的编译器开发组。
他也是BjarneStroustrup领导的Bell实验室Foundation项目的成员之一,负责C++程序设计环境中的对象模型部分。
他还撰写了许多关于C++的文章。
目前他已受雇于微软公司,负责VisualC++项目。
 目录:  本立道生(侯捷译序)目录前言(StanleyB.Lippman)第0章导读(译者的话)第1章关于对象(ObjectLessons)1.1C++模式模式(TheC++ObjectModel)1.2关键词所带来的差异(AKeywordDistinction)1.3对象的差异(AnObjectDistinction)第2章构造函数语意学(TheSemanticsofconstructors)2.1DefaultConstructor的建构操作2.2CopyConstructor的建构操作2.3程序转换语意学(ProgramTransformationSemantics)2.4成员们的初始化队伍(MemberInitializationList)第3章Data语意学(TheSemanticsofData)3.1DataMember的绑定(TheBindingofaDataMember)3.2DataMember的布局(DataMemberLayout)3.3DataMember的存取3.4“继承”与DataMember3.5对象成员的效率(ObjectMemberEfficiency)3.6指向DataMembers的指针(PointertoDataMembers)第4章Function语意学(TheSemanticsofFunction)4.1Member的各种调用方式4.2VirtualMemberFunctions(虚拟成员函数)4.3函数的效能4.4指向MemberFunctions的指针(Pointer-to-MemberFunctions)4.5InlineFunctions
2021/9/7 12:22:05 14.44MB 高清全文
1
C++沉思录,C++代码设计与重用,实际上完整的压缩文件总共10本,由于上传文件大小限制,故我已经打包上传,下载地址在里面的文本文档里,其它几本书是:C++和面向对象的数值计算,C++Templates,C++面向对象多线程编程,C++实践之路,C和C++代码精粹,C和指针,C圈套与缺陷,C专家编程。
2015/6/11 22:58:36 13.59MB C++
1
1.目的:调试、修改、运行模拟程序,通过形象化的状态显示,使学生理解进程的概念,了解同步和通信的过程,掌握进程通信和同步的机制,特别是利用缓冲区进行同步和通信的过程。
通过补充新功能,使学生能灵活运用相关知识,培养创新能力。
2.内容及要求:1)调试、运行模拟程序。
2)发现并修改程序中不完善的地方。
3)修改程序,使用随机数控制创建生产者和消费者的过程。
4)在原来程序的基础上,加入缓冲区的写互斥控制功能,模拟多个进程存取一个公共缓冲区,当有进程正在写缓冲区时,其他要访问该缓冲区的进程必须等待,当有进程正在读取缓冲区时,其他要求读取的进程可以访问,而要求写的进程应该等待。
5)完成1)、2)、3)功能的,得基本分,完成4)功能的加2分,有其它功能改进的再加2分3.程序说明:  本程序是模拟两个进程,生产者(producer)和消费者(Consumer)工作。
生产者每次产生一个数据,送入缓冲区中。
消费者每次从缓冲区中取走一个数据。
缓冲区可以容纳8个数据。
因为缓冲区是有限的,因而当其满了时生产者进程应该等待,而空时,消费者进程应该等待;
当生产者向缓冲区放入了一个数据,应唤醒正在等待的消费者进程,同样,当消费者取走一个数据后,应唤醒正在等待的生产者进程。
就是生产者和消费者之间的同步。
  每次写入和读出数据时,都将读和写指针加一。
当读写指针同样时,又一起退回起点。
当写指针指向最后时,生产者就等待。
当读指针为零时,再次要读取的消费者也应该等待。
为简单起见,每次产生的数据为0-99的整数,从0开始,顺序递增。
两个进程的调度是通过运行者使用键盘来实现的。
4.程序使用的数据结构进程控制块:包括进程名,进程状态和执行次数。
缓冲区:一个整数数组。
缓冲区说明块:包括类型,读指针,写指针,读等待指针和写等待指针。
5.程序使用说明  启动程序后,如果使用'p'键则运行一次生产者进程,使用'c'键则运行一次消费者进程。
通过屏幕可以观察到两个进程的状态和缓冲区变化的情况。
2019/3/25 13:35:58 306KB 操作系统 上机 实验报告 进程同步
1
这是一个用MFC完成的时钟程序,具有闹钟,更换背景图片,更换指针颜色,计时器,重置工夫等功能,适用于当做课程设计
2016/1/26 4:28:45 53.93MB VC++ MFC
1
C语言编译器lex和yacc编写的c语言编译器词法分析与语法分析的原始文件扩展:://www.quut.com/c/ANSI-C-grammar-l-1998.html和实现了C语言除了struct和指针几乎所有的语法。
运行环境要求:flexbisong++11python3中间代码生成Windows命令行输入:flexcompiler.lbison-vdtycompiler.yg++-std=c++11-ocompilertree.cppPraser.cppinnerCode.cpptools.cppcodeOptimize.cpplex.yy.cy.tab.ccompiler.exetest/test.c或者makefile.bat目标代码生成进入objectcode文件夹,命令行输入pythonobjectcode.pyobjectcode.py读取的源文件为inter.txt,生成的mips汇流编码在result.asm文件中中间代码格式定义语法描述标签1:定义标签label1功能f:
2016/4/17 20:14:29 5.1MB c compiler mips python3
1
1、纯C言语编写;
2、知识点众多:线性链表(基本包含链表完整操作)、多线程、文件读写、各种指针运用、各种字符串处理等等;
3、功能完善的主从通讯:可多客户端登录、带用户名\密码验证、编译无警告。
2017/1/24 1:36:50 440KB C语言 主从通讯 多线程 线性链表
1
《数据结构与面向对象程序设计(C++版)(第4版)》首先引见了软件开发的各个阶段、C++面向对象程序设计思想,然后从软件开发的角度,利用面向对象设计的思想,系统阐述了指针和动态数组、链表、模板类、迭代器、栈、队列、递归实现、树和图等内容,并对排序与查找的相关算法进行了深入剖析。
为了让读者巩固所学知识,在每节后面都给出了大量练习题,并在每章后面给出了答案。
为了锻炼读者的动手能力,每章末给出了大量编程项目,在《数据结构与面向对象程序设计(C++版)(第4版)》的配套网站还给出了一些更具挑战性的编程项目。
2021/7/27 16:52:01 26.14MB 数据结构 C++
1
定义B-树存储结构(要求m3;
为方便操作,结点中添加双亲结点指针域,最底层的Fail结点用NULL指针表示并且所有结点均存储于内存)。
定义B-树插入关键字函数、删除关键字函数、查找关键字函数以及按层次遍历输出B-树所有结点的函数。
主函数定义菜单(1.插入关键字2.删除关键字3.查找关键字4.层次遍历输出B-树所有结点5.结束程序)。
2021/4/10 10:15:43 22KB b-树 数据结构
1
共 336 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡