设计一个程序,该程序输入一个英语单词和它的释义(应考虑一个单词可以有多个释义)。
将单词和它的释义分别存放在文件word.dat和meaning.dat中。
文件word.dat中存储的数据的结构为:classindex{public:charword[20];streamposoffset;};其中,数据成员offset用于记录单词word的释义在文件meaning.dat中的位置。
用户输入一个单词,屏幕输出该单词的释义。
使用mfc做界面,实现添加、删除、修改单词功能,实现搜索单词释义。
2023/7/11 20:15:53 106.7MB c++ mfc 二叉树 交互界面
1
首先要理解基本的原理,2台电脑间实现TCP通讯,首先要建立起连接,在这里要提到服务器端与客户端,两个的区别通俗讲就是主动与被动的关系,两个人对话,肯定是先有人先发起会话,要不然谁都不讲,谈什么话题,呵呵!一样,TCPIP下建立连接首先要有一个服务器,它是被动的,它只能等待别人跟它建立连接,自己不会去主动连接,那客户端如何去连接它呢,这里提到2个东西,IP地址和端口号,通俗来讲就是你去拜访某人,知道了他的地址是一号大街2号楼,这个是IP地址,那么1号楼这么多门牌号怎么区分,嗯!门牌号就是端口(这里提到一点,我们访问网页的时候也是IP地址和端口号,IE默认的端口号是80),一个服务器可以接受多个客户端的连接,但是一个客户端只能连接一台服务器,在连接后,服务器自动划分内存区域以分配各个客户端的通讯,那么,那么多的客户端服务器如何区分,你可能会说,根据IP么,不是很完整,很简单的例子,你一台计算机开3个QQ,服务器怎么区分?所以准确的说是IP和端口号,但是客户端的端口号不是由你自己定的,是由计算机自动分配的,要不然就出现端口冲突了,说的这么多,看下面的这张图就简单明了了。
在上面这张图中,你可以理解为程序A和程序B是2个SOCKET程序,服务器端程序A设置端口为81,已接遭到3个客户端的连接,计算机C开了2个程序,分别连接到E和D,而他的端口是计算机自动分配的,连接到E的端口为789,连接到D的为790。
了解了TCPIP通讯的基本结构后,接下来讲解建立的流程,首先声明一下我用的开发环境是VisualStudio2008版的,语言C#,组件System.Net.Sockets,流程的建立包括服务器端的建立和客户端的建立,如图所示:二、实现:1.客户端:第一步,要创建一个客户端对象TcpClient(命名空间在System.Net.Sockets),接着,调用对象下的方法BeginConnect进行尝试连接,入口参数有4个,address(目标IP地址),port(目标端口号),requestCallback(连接成功后的返调函数),state(传递参数,是一个对象,随便什么都行,我建议是将TcpClient自己传递过去),调用完毕这个函数,系统将进行尝试连接服务器。
第二步,在第一步讲过一个入口参数requestCallback(连接成功后的返调函数),比如我们定义一个函数voidConnected(IAsyncResultresult),在连接服务器成功后,系统会调用此函数,在函数里,我们要获取到系统分配的数据流传输对象(NetworkStream),这个对象是用来处理客户端与服务器端数据传输的,此对象由TcpClient获得,在第一步讲过入口参数state,如果我们传递了TcpClient进去,那么,在函数里我们可以根据入口参数state获得,将其进行强制转换TcpClienttcpclt=(TcpClient)result.AsyncState,接着获取数据流传输对象NetworkStreamns=tcpclt.GetStream(),此对象我建议弄成全局变量,以便于其他函数调用,接着我们将挂起数据接收等待,调用ns下的方法BeginRead,入口参数有5个,buff(数据缓冲),offset(缓冲起始序号),size(缓冲长度),callback(接收到数据后的返调函数),state(传递参数,一样,随便什么都可以,建议将buff传递过去),调用完毕函数后,就可以进行数据接收等待了,在这里因为已经创建了NetworkStream对象,所以也可以进行向服务器发送数据的操作了,调用ns下的方法Write就可以向服务器发送数据了,入口参数3个,buff(数据缓冲),offset(缓冲起始序号),size(缓冲长度)。
第三步,在第二步讲过调用了BeginRead函数时的一个入口参数callback(接收到数据后的返调函数),比如我们定义了一个函数voidDataRec(IAsyncResultresult),在服务器向客户端发送数据后,系统会调用此函数,在函数里我们要获得数据流(byte数组),在上一步讲解BeginRead函数的时候还有一个入口参数state,如果我们传递了buff进去,那么,在这里我们要强制转换成byte[]类型byte[]data=(byte[])result.AsyncState,转换完毕后,我们还要获取缓冲区的大小intlength=ns.EndRead(result),ns为上一步创建的NetworkStream全局对象,接着我们就可以对数据进行处理了,如果获取的length为0表示客户端已经断开连接。
具体实现代码,在这里我建立了一个名称为Test的类:2.服务
2023/2/17 5:19:13 297KB TCP/IP C++ 协议
1
Sansen教授是欧洲第一的模拟ic设计大师,水平自然不在话下。
他编的书也很有特色,是ppt的方式。
他的书既体现了扎实的模拟ic基本功,又考虑了读者的学习接受过程。
他甚至可以把多级运放、轨到轨运放、offset和cmrr、电路中的耦合效应等等有些“偏”的内容作为独立的章节,却又讲述的系统而完整。
2020/10/22 21:21:29 30.43MB 运放 ,失配,失真
1
Sansen教授是欧洲第一的模拟ic设计大师,水平自然不在话下。
他编的书也很有特色,是ppt的方式。
他的书既体现了扎实的模拟ic基本功,又考虑了读者的学习接受过程。
他甚至可以把多级运放、轨到轨运放、offset和cmrr、电路中的耦合效应等等有些“偏”的内容作为独立的章节,却又讲述的系统而完整。
2020/10/22 21:21:29 30.43MB 运放 ,失配,失真
1
基于echart3.8.4,tree图中,连线的颜色,可每条线独立设置。
基于echarts3.8.4开发的,直接使用这个js文件即可,定义在data层,myLinkStyle,指定节点位置,或者节点名称(名称不反复时),节点位置可参考我的博客http://blog.csdn.net/wusefengye/article/details/79110195vardata={"name":"核心网关","children":childrenData,'label':{normal:{'offset':[70,0]}},'myLinkStyle':[{to:{x:190,y:210},color:"green"},{to:{x:304,y:420},color:"blue"},{targetName:"汇聚网关3",color:"yellow"}],
2018/3/22 5:12:43 2.09MB echarts
1
DNF偏移查找工具源码DNF-offset-lookup-tool-source.版本2.支持库shell.支持库spec.程序集窗口程序集1.程序集变量输入法句柄.子程序__启动窗口_创建完毕热键.注册(_启动窗口.取窗口句柄(),,#Home键,&子程序1)创建事件同步对象(0,假,假,“fangxiangpianyichakan”)时钟1.时钟周期=1000.子程序子程序1.局部变量bool,逻辑型.判断开始(进程能否存在(“DNF.exe”))bool=进程能否存在(“DNF.exe”).如果真(bool)输入法.激活(取句柄2(“DNF.exe”,,),输入法句柄).如果真结束.默认bool=进程能否存在(“DNF.EXE”).如果真(bool)输入法.激活(取句柄2(“DNF.EXE”,,),输入法句柄).如果真结束.判断结束.子程序输入法注DLL写到文件(取特定目录(10)+“\SouGoo.ime”,#Shurufa)输入法句柄=输入法.安装(取特定目录(10)+“\SouGoo.ime”,“DNF输入法”)调试输出(输入法句柄).如果真(输入法句柄≠0)输入法.设置注入(取特定目录(10)+“\Sougoo.ime”,取运行目录()+“/pianyi.dll”)信息框(“按Home呼出外挂!”,#信息图标,“系统信息”).如果真结束.子程序_按钮1_被单击按钮1.禁止=真按钮2.禁止=假输入法注DLL().子程序_按钮2_被单击.局部变量bool,逻辑型输入法.清除注入(取特定目录(10)+“\Sougoo.ime”)bool=输入法.卸载(输入法句柄).如果(bool)信息框(“卸载成功!”,#信息图标,“系统信息”).否则信息框(“卸载失败!”,#信息图标,“系统信息”).如果结束.子程序__启动窗口_将被销毁.局部变量bool,逻辑型输入法.清除注入(取特定目录(10)+“\Sougoo.ime”)bool=输入法.卸载(输入法句柄).如果(bool)信息框(“卸载成功!”,#信息图标,“系统信息”).否则信息框(“卸载失败!”,#信息图标,“系统信息”).如果结束.子程序_时钟1_周期事件.局部变量bool,逻辑型.如果真(打开事件同步对象(2031619,假,“zidongxiezaizhuru”)≠0)时钟1.时钟周期=0输入法.清除注入(取特定目录(10)+“\Sougoo.ime”)bool=输入法.卸载(输入法句柄)处理事件()结束().如果真结束
2019/11/11 4:19:45 736KB DNF偏移源码
1
设计一个程序,该程序输入一个英语单词和它的释义(应考虑一个单词可以有多个释义)。
将单词和它的释义分别存放在文件word.dat和meaning.dat中。
文件word.dat中存储的数据的结构为:      classindex      {public:      charword[20];      streamposoffset;      };其中,数据成员offset用于记录单词word的释义在文件meaning.dat中的地位。
用户输入一个单词,屏幕输出该单词的释义。
2019/9/6 15:07:56 963KB 单词录入 字典
1
├─第2篇-基本功能│├─第10章-打印││line.bmp││Thumbs.db││底端标题行.JPG││底端标题行1.PNG││技巧113在同一页上打印不连续的区域.xls││技巧116在报表的每一页上打印公司Logo.xls││技巧117在页眉或页脚增加分隔线.xls││技巧119在Excel中定时打印.xls│││├─第2章-工具栏和菜单││技巧12自定义菜单和工具栏.xls│││├─第3章-操作工作簿│││技巧22简繁转换不求人.xls│││技巧24为工作簿减肥.xls│││││└─技巧22简繁转换不求人││├─Office2002简繁转换加载宏│││tcscconv.exe│││││└─Office2003简繁转换加载宏││tcscconv.msi│││├─第4章-操作工作表││技巧29快速填充所有空白单元格.xls││技巧39隔行插入的绝招.xls││技巧40在非空行之间自动插入空行.xls││技巧41快速删除所有空行.xls│││├─第5章-数据处理││技巧52自动填充的威力.xls││技巧58提取超链接信息.xls││技巧67Excel的摄影功能.xls│││├─第6章-单元格格式││技巧68奇妙的自定义数字格式.xls││技巧70自定义数字格式的经典应用.xls││技巧72合并单元格的同时保留所有数值.xls││技巧73为同一个单元格里的文本设置不同格式.xls││技巧74制作斜线表头.xls││技巧76工作表背景图片的妙用.xls│││├─第7章-名称的奥妙││技巧79在名称中使用常量与函数1.xls││技巧79在名称中使用常量与函数2.xls││技巧82创建动态名称.xls││技巧83图片自动更新.xls││技巧85创建名称表格.xls││技巧86以图形方式查看名称.xls│││├─第8章-活用条件格式││技巧100用8种颜色区分不同数值.xls││技巧101无限条件的条件格式.xls││技巧88美丽的数据区域.xls││技巧89永恒的间隔底纹.xls││技巧90快速比较不同区域的数值1.xls││技巧91快速比较不同区域的数值2.xls││技巧92自动醒目的小计.xls││技巧93在工作日历中突显周休日.xls││技巧94突显活动单元格的坐标.xls││技巧95生日提醒.xls││技巧96特殊数值提醒.xls││技巧97标记重复值.xls││技巧98标记含有公式的单元格.xls││技巧99标记匹配目标数值的单元格.xls│││└─第9章-数据有效性绝技│技巧102在单元格中创建下拉列表.xls│技巧103另类的批注.xls│技巧104快速切换有效性的来源.xls│技巧106只能录入某种特征的数据.xls│技巧107限制重复值的录入.xls│技巧108杜绝负数库存.xls│技巧109强制序时录入.xls│技巧110多级选择录入.xls│├─第3篇-数据分析│├─第11章-排序与筛选││技巧121对超过3列的数据排序.xls││技巧122按照特定的顺序排序.xls││技巧123按笔划排序.xls││技巧124按行来排序.xls││技巧125按字符数量排序.xls││技巧126按颜色排序或筛选.xls││技巧127随机排序.xls││技巧128排序字母与数字的混合内容.xls││技巧129返回排序前的表格.xls││技巧131在受保护的工作表中使用自动筛选.xls│││└─第12章-分类汇总与数据透视│技巧132分类汇总结果的复制.xls│技巧133多字段分类汇总.xls│技巧134多层次的数据浏览.xls│技巧135在受保护的工作表中调整分级显示视图.xls│技巧136用二维表创建数据透视表.xls│技巧137组合数据透视表内的日期项.xls│技巧138快速统计重复项目.xls│技巧139在数据透视表中添加计算项.xls│├─第4篇-函数导读│├─第14章函数基础││技巧147单元格的引用方法.xls││技巧153函数公式的限制与突破.xls│││└─第15章数组公式入门│技巧155内存数组.xls│技巧157多单元格数组公式.xls│技巧158数组的转置和变换.xls│├─第5篇-函数技巧│├─第16章-信息处理││技巧161取得单元格信息.xls││技巧162取得当前工作表表名.xls│││├─第17章-文本处理││技巧164字符转换技巧三则.xls││技巧165重复文本技巧二则.xls││技巧166字符串比较及清理垃圾字符.xls││技巧169计算字符出现的次数.xls││技巧170提取字符串.xls││技巧171文本合并符号的妙用.xls││技巧172重复记录自动加编号.xls││技巧174解读身份证编码信息.xls││技巧175身份证位数的变换.xls││技巧176金额数字分列.xls││技巧177数字转英文序数.xls││技巧178人民币金额大写公式.xls│││├─第18章-日期与时间计算││技巧179根据农历生日计算生肖与年份.xls││技巧181日期与数字格式的互换.xls││技巧182英文日期的转换.xls││技巧183将中文日期文本转为日期值.xls││技巧184计算指定间隔的日期.xls││技巧185月度季度相关日期计算.xls││技巧186隐秘函数DATEDIF.xls││技巧187星期的相关计算.xls││技巧188工作日的相关计算.xls││技巧189解读时间格式代码.xls││技巧190将角度显示为度分秒以及相关转换计算.xls│││├─第19章-数学与三角计算││技巧191常用数值舍入计算.xls││技巧192按人民币面额估算备钞数.xls││技巧193余数的妙用.xls││技巧194数值的修约.xls││技巧195产生规定范围内的随机数.xls││技巧196求解多元一次方程.xls││技巧197求出成绩最高分.xls│││├─第20章-统计求和││技巧198设置目标数据的上下限.xls││技巧199统计选定区域数据个数.xls││技巧200认识COUNTIF函数.xls││技巧201单字段多条件计数.xls││技巧202动态统计及格人数.xls││技巧203认识SUMIF函数.xls││技巧204单字段多条件求和.xls││技巧205使用通配符模糊求和.xls││技巧206日计帐中的余额累计.xls││技巧207数据表实现动态小计.xls││技巧208SUM数组公式计数与求和.xls││技巧209SUM函数与SUMPRODUCT函数的区别.xls││技巧210部门评价等级转换.xls││技巧211分级累进求和.xls││技巧212自动筛选_隐藏_组合下的统计.xls││技巧213取得各科成绩的最高分.xls││技巧214统计不及格人数.xls││技巧215指定条件下求平均值.xls││技巧216对称剔除极值求平均值.xls││技巧217认识FREQUENCY函数.xls││技巧218统计不重复值的数量.xls││技巧219单个区域排名.xls││技巧220多个区域排名.xls││技巧221中国式排名.xls││技巧222求第n大的不重复值.xls│││├─第21章-查找与引用││技巧223根据首行(列)查找记录.xls││技巧224多条件区间判断取值.xls││技巧225确定查找值能否存在.xls││技巧226根据行列条件返回结果.xls││技巧227返回引用的单元格地址.xls││技巧228逆向查询数据.xls││技巧229模糊查找数据.xls││技巧230返回字符串中连续数值.xls││技巧231定位最后非空单元格.xls││技巧232生成垂直_水平序列.xls││技巧233理解OFFSET函数.xls││技巧234批量生成工资条.xls││技巧235建立超链接.xls││技巧236自动跳转到未输入的单元格.xls││技巧237统计指定月份的销量汇总.xls││技巧238取得目标汉字的拼音首字母.xls││技巧239根据双列条件进行查找.xls││技巧240返回最后一条数据记录.xls││技巧241按单条件筛选记录.xls││技巧242按多条件筛选记录.xls││技巧243对数据进行排序.xls││技巧244多关键字排名应用.xls││技巧245返回单列中的唯一值列表.xls││技巧246返回双列中的唯一值列表.xls││技巧247返回数据区域中的唯一值列表.xls│││├─第22章-宏表函数││技巧249取得工作表名.xls││技巧250取指定路径下所有文件名.xls││技巧251取单元格属性值.xls││技巧252取得表达式.xls││技巧253算式和计算结果.xls│││├─第23章-逻辑判断││技巧254养成良好的逻辑分析习惯.xls││技巧255学会逆向思维.xls│││└─第24章-函数公式的优化│技巧256去除冗余判断.xls│技巧257使用动态引用.xls│技巧258使用辅助列和普通公式.xls│├─第6篇-函数高级应用│├─第25章-多维引用││技巧261三维引用取不重复数据.xls││技巧262跨多表查询.xls││技巧263跨多表汇总.xls││技巧264条件筛选下求不重复值.xls││技巧265求出各项目极值的合计数.xls│││├─第26章-内存数组││技巧266数组变换技巧三则.xls││技巧267N_T函数生成内存数组.xls││技巧268空行自动填满数据的内存数组.xls││技巧269生成除当前工作表外的工作表名称.xls││技巧270对文本进行排序.xls││技巧271MMULT函数应用.xls│││└─第27章-循环引用│技巧273记录单元格操作时间.xls│技巧274产生不变随机数.xls│技巧275求固定总和的组合.xls│技巧276有记忆功能的单元格.xls│├─第7篇-图表与图形│├─第28章-图表通用技巧││技巧277去除分类轴上的空白日期.xls││技巧278折线图中处理空单元格的三种样式.xls││技巧279让图表自动适应窗口大小.xls││技巧280快速设置图表字体.xls││技巧281隐藏接近于零的数据标签.xls││技巧282在图表中处理负值.xls││技巧283快速添加图表数据系列.xls││技巧284在图表中使用透明填充色.xls││技巧285背景透明的图表.xls││技巧286在图表中使用QQ图片.xls││技巧287制作完全静态的图表.xls││技巧288控制数据标志的显示位置.xls││技巧289快速统一多个图表大小.xls││技巧290使条形图分类轴的标签与源数据列显示顺序一致.xls││技巧291自定义图表.xls││技巧292图表公式SERIES的使用技巧.xls││技巧293在图表中使用对数刻度.xls││技巧294制作瀑布图.xls││技巧295美化三维图表.xls││技巧296快速制作组合图表.xls││技巧297随单元格自动变化的图表标题.xls││技巧298图表背景——横向分割.xls││技巧299图表背景——纵向分割.xls││技巧300图表背景——四象限图表.xls││技巧301复合饼图.xls││技巧302利用误差线制作数据点交叉线.xls││技巧303N合一图表.xls││技巧304在图表中画直线.xls││技巧305始终突出显示最大值和最小值.xls││技巧306画趋势线并显示趋势线公式.xls││技巧307动态图表——辅助列.xls││技巧308动态图表——定义名称.xls││技巧309动态图表——最后7天的数据.xls││技巧310动态图表——活动单元格.xls││技巧311求任意点的坐标.xls││技巧312美丽的万花规.xls││技巧313批量绘图.xls││技巧314数据系列快速着色.xls││技巧315批量添加数据标签.xls││技巧316快速将图表输出为图片.xls│││├─第29章-经典图表实例││技巧317Xbar-R控制图.XLS││技巧318双层饼图.xls││技巧319柏拉图(Paretochart).xls││技巧320直方图和正态分布图.xls││技巧321立体雷达图.xls││技巧322自定义多轴图表.xls││技巧323不等宽柱形图.xls││技巧324任意函数曲线图.xls││技巧325步进图.xls││技巧326甘特图.xls││技巧327比较柱形图.xls││技巧328盈亏平衡分析图.xls││技巧329波士顿矩阵图.xls│││└─第30章-图示和图形│技巧330组织结构图.xls│技巧331图示中的文本设置.xls│技巧332流程图.xls│技巧333两个阴影的图形.xls│技巧334图表转为自选图形.xls│技巧335图形对齐技巧.xls│技巧336自选图形群的编辑.xls│技巧337用Excel画画.xls│技巧338自选图形的变形.xls│技巧339在批注中插入图表.xls│技巧340条码图形.xls│└─第8篇-VBA实例与技巧8-1.xlsmscomct2.ocxsave.gifThumbs.db技巧343利用日期控件输入时间.xls技巧344确定当前单元格所在的页数.xls技巧345利用VBA取不重复值.xls技巧346提取字符中指定类型的字符.xls技巧347替换工具栏按钮的图标.xls技巧348制作路径选择对话框.xls技巧349从其他工作簿取值.xls技巧350自动添加控件及事件代码.xls技巧351定义Application级别的事件代码.xls技巧352批量修改工作表中的批注.xls技巧353快速隐藏周围区域.xls技巧354设置缺省目录和文件名.xls技巧355在长时间运算中使用友好提示.xls技巧356制作个性化启动画面-1.xls技巧356制作个性化启动画面-2.xls技巧357记录工作簿最后更新时间-1.xls技巧357记录工作簿最后更新时间-2.xls技巧357记录工作簿最后更新时间.xls技巧358判断文件能否已经打开和能否存在.xls技巧359人民币大写转换函数.xls技巧360按颜色求和与计数函数.xls
2018/10/22 14:12:22 2.28MB windows 文档
1
设计一个程序,该程序输入一个英语单词和它的释义(应考虑一个单词可以有多个释义)。
将单词和它的释义分别存放在文件word.dat和meaning.dat中。
文件word.dat中存储的数据的结构为:classindex{public:charword[20];streamposoffset;};其中,数据成员offset用于记录单词word的释义在文件meaning.dat中的地位。
用户输入一个单词,屏幕输出该单词的释义。
2017/10/14 2:23:01 46KB 合工大 课程设计
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡