linux串口编程非阻塞read打包write设备打开串口配置
2023/3/10 0:47:23 230KB linux串口 源码 附加Makefile
1
斐讯k2pB1官改最新固件:k2p_bcm_v16.bin留意:斐讯k2pA版请勿使用。
刷入方法:http://bbs.mydigit.cn/read.php?tid=2611883
2023/3/10 0:01:19 13.95MB 斐讯k2p B1 k2p_bcm_v16.bin
1
编译原理实验三一、讨论Oberon-0语言的特点1、保留字与关键字的概念区分保留字只要是用在程序语言的层次架构用途上,比如说IF,THEN,ELSIF,用在程序的循环、分支、判断条件、程序块等组织上,它是程序语言中预定义的,具某些特殊意义规范的单词。
保留字侧重于强调不能被用户作为定义的名字。
关键字是一个只被用在某一部分的程序编程中,关键字在程序语言中同样有特殊的意义特征。
多用于类型定义,如在Oberon中,integer便是用来定义变量类型的关键字。
还有其他的功能如作为程序语言中的某个特定函数的名称,如write,read等(在Oberon中).不同的语言的关键字和保留字的概念区分是不一样的。
例如在C,JAVA中,if,else,while这些都是关键字的范围,而在Oberon中是保留字的范围。
在C语言风格的程序语言中,是将程序控制块的那些保留字也一并归为关键字的。
(这些关键字不可以作为变量,函数的名称,也就是不可以作为程序员使用的标示符)。
2、Oberon与C、Java的差别a)在每逐个个主要的函数过程procedure中,Oberon有begin和end来标志,而在C和java中一般是用花括号来标志。
b)在定义变量时,Oberon是在分号之后,也就是最后在给出具体是什么类型的,而在C、Java中一般是在变量的前面就给出了类型,只是Oberon会先用var说明这是一个变量。
c)Oberon中的可用到数据结构主要有数组,类似C中的结构体,类型选择比较少。
3二、文法二义性讨论该文法没有二义性。
在其他的语言中出现的二义性类型中,比如表达式的parsingtree(存在两颗或以上的parsingtrees)的二义性,需要用算符优先关系来确定的和if-else的匹配问题导致的二义性问题,都在该文法中的EBNF定义中被消除掉了。
1、对于表达式的二义性处理:simple_expression=["+"|"-"]term{("+"|"-"|"OR")term};term=factor{("*"|"DIV"|"MOD"|"&")factor};从中,可以看出*和DIV、MOD这些一定在+-之前就进行运算了。
通过将表达式的将+-和*DIV、MOD等用不同层次的表达式进行定义,消除了这一二义性。
2、对于if-else匹配出现二义性的处理:
2023/3/8 21:01:58 2.96MB Oberon-0
1
该资源是exe程序,不是代码,感兴味的可以下载看看,欢迎指正。





该程序介绍在QTCN上有介绍http://www.qtcn.org/bbs/read-htm-tid-68069.html
2023/3/4 5:10:20 19.91MB 拖拽列 冻结列 多行表格
1
===========================================TeeChartProActivexControlv2018MS.NETCOMPATIBILITYCopyright(c)1997-2018bySteemaSoftwareSLAllRightsReserved.http://www.steema.comemail:info@steema.comsupportx@steema.com===========================================Documentupdated:June2004TeeChartProActivexControlMSVisualStudio.NETcompatibilitynotes===========================================Pleaseseetherelease.txtreleasenotesforbugfixandfeatureinformationaboutthisrelease.===========================================ChangesforNETcompatibility-TheChart.Series(xx)read-onlypropertyhasbeenreplacedbyaFunctionmethod(affectsonlycodewritteninVC++andsimilarlanguagesthatmakedirectreferencetoGet_andSet_ofproperties).ThenewSeriesmethod(calledSeries)changesvisiblybyremovaloftheproperty'Get_'elementoftheFunction.ThechangeisrequiredduetoacurrentMS.NETimportrestrictioncausingnon-importofActiveXpropertiesthathaveanindexparameter(onlyaffectstherootlevelofcontrols!).ForaVBapplicationnocodechangeisnecessary.Pleaseseethefollowingnotesforotherenvironments.TheoriginalpropertyhasbeenhiddenintheinterfaceandrenamedtoaSerieskeepingitsexistingDispidtosupportbackwardcompatibilitywithapplicationscompiledwithpreviousreleasesofTeeChart5.-TheTChartOnSeriesBeforeAddmethodusesabooleanvariablecalled'Continue'."continue"isakeywordinC#(thelanguageusedtointerimcompileTeeChartnamespaceinformationin.NET).ThishadcausedanimportproblemwiththeearlierreleasesofVisualStudio.NET.Asaprecautionwehavechosentorenametheparameterto'MoreValues'fortheTeeChartProActiveXControl.Notesonuse:--------------ConstantnamesinNETrequirefullreferencebydefault:eg.AxTChart1.AddSeries(Te
2023/2/11 2:18:34 64.67MB TeeChart Pro Activex Control
1
实验内容:通过对具体的文件存储空间的管理、文件的物理结构、目录结构和文件操作的实现,加深对文件零碎内部功能和实现过程的理解。
要求:1.在内存中开辟一个虚拟磁盘空间作为文件存储器,在其上实现一个简单的单用户文件零碎。
在退出这个简单的文件零碎时,将该虚拟文件零碎保存到磁盘上,以便下次再将它恢复到内存的虚拟磁盘空间中。
2.提供以下操作:•new:建立一个新的简单文件零碎;
•sfs:打开一个简单文件零碎;
•exit:退出打开的简单文件零碎;
•mkdir:创建子目录;
•rmdir:删除子目录;
•ls:显示目录;
•cd:更改当前目录;
•create:创建文件;
•open:打开文件;
•close:关闭文件;
•read:读文件;
•write:写文件;
•delete:删除文件。
2023/2/8 22:26:49 16KB 文件系统
1
教程非常不错,价值280元,绝对是干货Linux网络编程(总共41集)讲解Linux网络编程知识,分以下四个篇章。
Linux网络编程之TCP/IP基础篇Linux网络编程之socket编程篇Linux网络编程之进程间通信篇Linux网络编程之线程篇Linux网络编程之TCP/IP基础篇01TCPIP基础(一)ISO/OSI参考模型TCP/IP四层模型基本概念(对等通信、封装、分用、端口)02TCPIP基础(二)最大传输单元(MTU)/路径MTU以太网帧格式ICMPARPRARP03TCPIP基础(三)IP数据报格式网际校验和路由04TCPIP基础(四)TCP特点TCP报文格式连接建立三次握手连接终止四次握手TCP如何保证可靠性05TCPIP基础(五)滑动窗口协议UDP特点UDP报文格式Linux网络编程之socket编程篇06socket编程(一)什么是socketIPv4套接口地址结构网络字节序字节序转换函数地址转换函数套接字类型07socket编程(二)TCP客户/服务器模型回射客户/服务器socket、bind、listen、accept、connect08socket编程(三)SO_REUSEADDR处理多客户连接(process-per-conection)点对点聊天程序实现09socket编程(四)流协议与粘包粘包产生的原因粘包处理方案readnwriten回射客户/服务器10socket编程(五)read、write与recv、sendreadline实现用readline实现回射客户/服务器getsockname、getpeernamegethostname、gethostbyname、gethostbyaddr11socket编程(六)TCP回射客户/服务器TCP是个流协议僵进程与SIGCHLD信号12socket编程(七)TCP11种状态连接建立三次握手、连接终止四次握手TIME_WAIT与SO_REUSEADDRSIGPIPE13socket编程(八)五种I/O模型select用select改进回射客户端程序14socket编程(九)select读、写、异常事件发生条件用select改进回射服务器程序。
15socket编程(十)用select改进第八章点对点聊天程序16socket编程(十一)套接字I/O超时设置方法用select实现超时read_timeout函数封装write_timeout函数封装accept_timeout函数封装connect_timeout函数封装17socket编程(十二)select限制poll18socket编程(十三)epoll使用epoll与select、poll区别epollLT/ET模式19socket编程(十四)UDP特点UDP客户/服务基本模型UDP回射客户/服务器UDP注意点20socket编程(十五)udp聊天室实现21socket编程(十六)UNIX域协议特点UNIX域地址结构UNIX域字节流回射客户/服务UNIX域套接字编程注意点22socket编程(十七)socketpairsendmsg/recvmsgUNIX域套接字传递描述符字Linux网络编程之进程间通信篇23进程间通信介绍(一)进程同步与进程互斥进程间通信目的进程间通信发展进程间通信分类进程间共享信息的三种方式IPC对象的持续性24进程间通信介绍(二)死锁信号量PV原语用PV原语处理司机与售票员问题用PV原语处理民航售票问题用PV原语处理汽车租赁问题25SystemV消息队列(一)消息队列IPC对象数据结构消息队列结构消息队列在内核中的表示消息队列函数26SystemV消息队列(二)msgsnd函数msgrcv函数27SystemV消息队列(三)消息队列实现回射客户/服务器28共享内存介绍共享内存共享内存示意图管道、消息队列与共享内存传递数据对比mmap函数munmap函数msync函数29SystemV共享内存共享内存数据结构共享内存函数共享内存示例30SystemV信号量(一)信号量信号量
2023/1/17 22:54:54 296B c++
1
源代码,一看就知道!开头部分,下面的本人下载下来看吧!publicpartialclassLoginForm:Form{publicstaticstringuacc;publicstaticstringupsw;publicstaticstringuname;publicstaticstringusex;publicstaticstringupart;publicstaticstringuright;publicLoginForm(){InitializeComponent();}privatevoidloginbtn_Click(objectsender,EventArgse){if(this.useracctxt.Text.Trim()==""&&this.pswtxt.Text==""){MessageBox.Show("请输入您的用户名和密码!","提示!");return;}try{stringsql;sql="select*fromtb_userwhereuacc='"+this.useracctxt.Text+"'andupsw='"+this.pswtxt.Text+"'";OleDbDataReaderdr=DBHelp.OleReader(sql);dr.Read();if(dr.HasRows){uacc=this.useracctxt.Text;upsw=this.pswtxt.Text;uname=dr["uname"].ToString();usex=dr["usex"].ToString();upart=dr["upart"].ToString();uright=dr["uright"].ToString();MainFormaf=newMainForm(this);this.Hide();this.useracctxt.Clear();this.pswtxt.Clear();af.Show();}else{MessageBox.Show("账号或密码错误!","提示!");this.useracctxt.Clear();this.pswtxt.Clear();this.useracctxt.Focus();}}catch(Exception){MessageBox.Show("数据库无法连接!","警告!");}}privatevoidcancelbtn_Click(objectsender,EventArgse){Application.Exit();}privatevoidLogi
2021/5/18 13:52:33 466KB C#
1
内存不能为read的缘由.zip
2018/10/4 3:24:28 2KB 内存 read
1
/*cole-AfreeCOLElibrary.cole_extract-Extractafilefromafilesystem.Copyright1998,1999RobertoArturoTenaSanchezThisprogramisfreesoftware;youcanredistributeitand/ormodifyitunderthetermsoftheGNUGeneralPublicLicenseaspublishedbytheFreeSoftwareFoundation;eitherversion2oftheLicense,or(atyouroption)anylaterversion.Thisprogramisdistributedinthehopethatitwillbeuseful,butWITHOUTANYWARRANTY;withouteventheimpliedwarrantyofMERCHANTABILITYorFITNESSFORAPARTICULARPURPOSE.SeetheGNUGeneralPublicLicenseformoredetails.YoushouldhavereceivedacopyoftheGNUGeneralPublicLicensealongwiththisprogram;ifnot,writetotheFreeSoftwareFoundation,Inc.,59TemplePlace,Suite330,Boston,MA02111-1307USA*//*ArturoTena*/#include/*Tocompilethisfileoutsidecolesourcetree,youmustincludehereinstead*/#include"cole.h"#definePRGNAME"iOLE"#defineBUFFER_SIZE128intmain(intargc,char**argv){ COLEFS*cfs; COLEFILE*cf; COLERRNOcolerrno; charbuffer[BUFFER_SIZE]; size_tchar_read; if(argc!=3){ fprintf(stderr,"cole_extract.Extractafilefroma" "filesystemtothestandardoutput.\n" "Usage:"PRGNAME"\n" "FILE-Filewiththefilesystem.\n" "INFILE-Filenameofthefiletoextract.\n"); exit(1); } printf("%s",argv[1]); cfs=cole_mount(argv[1],&colerrno); if(cfs==NULL){ cole_perror(PRGNAME,colerrno); exit(1); } cf=cole_fopen(cfs,argv[2],&colerrno); if(cf==NULL){ cole_perror(PRGNAME,colerrno); cole_umount(cfs,NULL); exit(1); } while((char_read=cole_fread(cf,buffer,BUFFER_SIZE,&colerrno))){ if(fwrite(buffer,1,char_read,stdout)!=char_read){ break; } } if(!cole_feof(cf)){ cole_perror(PRGNAME,colerrno); cole_umount(cfs,NULL); exit(1); } if(cole_fclose(
2020/2/17 3:19:13 173KB ole格式解析代码
1
共 75 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡