版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、使用PCLint进行代码静态检查步骤及注意点第一步:安装与配置pclint第二步:安装vc+6.0,因为本文以编译器vc6为例子第三步:将pclint 集成到vc6.0中第四步:注意点下面详细说明:第一步:安装与配置pclintPC-lint软件性价比高,易于学习,容易推广和固化到软件开发测试流程中去, 所以在全世界得到了广泛的应用。PC-lint使用方法很简单,可以用命令行方式 进行,例如 lint-nt - u std.lnt testl.c test2.c test3.c 也可以使用 MAKEFILE 的方式。此外,它还可以集成到很多开发环境或常用的代码编辑软件中,比如集成到 Sourc
2、e Insight/SLICKEDIT/MS VC6.0/KEIL C. 等。PC-Lint 还支持 Scott Meyes的名著(Effective C+/More Effective C+)中说描述的各种提高效率和防止错误的方法。PC-lint的安装非常简单,以PC-lint 8.0为例,运行安装程序将其释放到指定的安装目录即可,比如c:pclint8。然后需要运行PC-lint的配置工具config.exe 生成选项和检查配置文件,以刚才的安装路径为例,config.exe 应该位于:C:pclint8config.exe。配置文件是代码检查的依据,PC-lint自带了一个标准配置文件s
3、td.lnt ,但是这个文件没有目录包含信息 (头文件目录), 通常对代码检查的时候都需要指定一些特殊的包含目录,所以要在标准配置的基础上生成针对某个项目代码检查的定制配置。下面就以 Microsoft Visual C+6 的开发环境为例,介绍一下定制配置的过程。运行C:pclint8config.exe后出现一个欢迎界面,提示版权信息,如图4.1所示:WelcomeTelcwe 顷 the cothfiPOL 函(T*) for OW阳H5 S FC-linl 呻臼 fUF机& fil»£ air» m.ii» labia at htlp f
4、 /nrr (1 np«l cwi or vt *ijitkpel Softr«reCopyr i cht % R02All. ri(ht£ rtKtrrti.亍孑函| 卑街 峨助 I图4.1配置欢迎窗口点击“下一步”按钮出现pc-lint.exe命令行使用说明窗口(图4.2所示):PC I mt for C心 U加Ihii c«ficiiyr«13& wiitfd vill build the fllcwanc flits b事属d w 罕心urreftot-TiiU* E FC-liRt b<tch fil< &
5、scr】bH DnCfIZCKS D7心玷3玷 «< I 与叩口”“网 "ti&m 1 us<4 by TB.LFTjT1m >口«£ LIF IAI I、 tv fitvi<i< cvfiviuiw*y t中 liibt1L,Tgn4 If frwi wy dir-ictcryUK j optf>1*1LIN E AT ciLikt *ir-ii ccrfhp*-iTii! * : r ijjl f 711 r? 心 日fh】.Imt«1141i4ii Hir<et*ry MIMT-KT -i
6、 rtiEiFidtiry ETD LFT官h.t b3hii 11 i t, Ji 3 r*c t ijt1 j cF-i Uhl 11 Tit *xwcvt tlbl*tenti1 r ecticry conf ftiAs ymr cnfjfur <ti >jii " UTT J f jlt x"i -Ccrif a <Iiirtctcrylht file Storch incinNnt境crJ'irtecry Ciir<?tcry 有iTint fm 枇 土骨 emgd 11ri# intici -orily tc ergt醉 LIN
7、BAI El <11*riin&riiC fr如 wi thiifi 皿 II>E or tdi tor Fcr «d4i tic*ti«l infcTntt.xci.il, clidk r 也卜 菱羁1 ift 勺,胃 t上 坊(B)It二爰寸3图4.2 pc-lint.exe命令行使用说明窗口点击“下一步”按钮继续,接着是选择创建或修改已有配置文件STD.LNT的选项:Thi - eflutxirtrd riri rrifcte 机 z STD DTT fil* fro. ter it eh wcui tiltrt dni ydu hiv«
8、 prtviflatly er*it« 1 to b* ue«1 <x yoiir STD LHT S«14e* y-Nir rhf i par it' x ohry hM寺捋fc PCLintap S*l*ct onv of yrtur (>r*vi STD UT fil«图4.3选择如何使用配置文件STD.LNT因为我们是第一次配置,所以选择上面一个选项“ Create a new STD.LNT ,这 样做不会修改已有配置文件STD.LNT勺内容,而是创建一个新的STD_x.LNTC件, 文件名中的x是从“a”到“z” 26个英
9、文字符中的任意一个,一般是收顺序排 列,从“a”开始。STD_x.LN成件的内容被初始化为STD.LNT内容的拷贝。如 图4.3所示,使用默认的PC-Lint路径,然后点击“下一步”按钮选择编译器:Sdect Your Lorvipik rMTm* npportT kwl" rrpil#ri thrsufi th* uw ai: cci L*r optlant fil«s FLfiasa tfrlact ptur coApiLtrTlli 1-< ill b« tvht £llf STT LMTuid >111Ub kyprqi i it
10、171; ccw; iltrtil«Uicript ViiuiJ Cttx_InOMklmarks HC12 CcoTmhcl? Lnl),#1 emmft * EUftl C* 方x ljcd-mw<0V«tr4v*r)n IT16 (e«-*wheL6 1机H «»tFAw*rkt IPFl (si-»FFC Lftt J trovtrkt Wift?2 <86 tMr.*rwlr32 Int i flieratift Vtntl C+ * it (c&-*«4C lnt> j IhcrgoEt
11、 Vimal CH 5 蓄(?oweUO .nt) n|lh,-,ViKUal 匚* IjgT 1.-。-3。丁口 Imt :.<上一罗(亍二5) 叫 | 啊 |接下来是选择编译器,在下拉框中选择自己使用的编译器。这里我们选择"Microsoft Visua l C+ 6.x (co- msc60.lnt) ”。如果没有自己使用的编译器, 可选择通用编译器“ Generic Compilers ” 。这个选项会体现在co-xxx.lnt 文件 中,并存放在前面我们选择的配置路径(C:PCLint8 )下,在后面配置选项我们 所选择的*.LNT均会被存放到这个路径下。点击“下一步
12、”按钮选择内存模ArchitectureEy dtflull, FC"lint tsimts t 3£*bjt flat nt'd«l Th«x* ftssunpUifiEii caiii t>« «v*rridden with xizv tpticM (-1) trd *flory ned*! tpticjivs f*n iZTB LFT tc tvovu ioitft0£ij>rtellctThejt r cftTi 1 at er t r cvrrr iddth It y c j? cri *1lc
13、 c ormnd 11 tie <ir by a fie ,Tfi LFT -«itLin « civ«l dirtctoiy.Select <tcf«ult 惜/ncirV cdtl or &rchi lecliLre厂 IQbit Srttll F|ed*l (f,si2 -sjNiciit r噌皂【5>AU'<< ti<;p tn. sntdLiL d.t.)f 壬 f * " ' if ' r f 4 Vlt-nififtci moia*i hsu Frops. J.t
14、rc« L Utt t)(pii H 一 】十 -cr If ?f ij lliofct SiLttf# nocei 't r<*lu <«C "Z f.】 5? br<W? 。勺商 ixiu fi it *< d*i 'm. rC 54_bit Vlnt. rm* r< 土一步|二£史 > -常 | 帮助 |图4.5选择内存模式可以根据自己程序区和数据区的实际大小选择一个恰当的内存模型,内存模型的选项会体现在STD.LN成件或新创建的STD_x.LNT中。因为我们的开发环境是 32位的Window所以
15、选择“ 32- bit Flat Model ”,然后点击“下一步”按钮 选择所要的支持库的配置信息:Lrbr«ricsTon Biy dm ipeci fy whi ch 1 iuies you me Doiil; s« ,*11 result hi pltcinc i上审it 'liYruy r?ptiomJ filts into SIL LITT vU cjyniiiivt n«»ei of iht for» Uxxx LHTC« t tin compiler cpiionir fiuir? j'tici fi
16、c 1 ir uy fil * i * o be ir.clud* j 7f y<m hiv? rho3*L surh 上 ck«4OIL Library(r 1-i ClL:Jr try 'Krl Hid' i OVL Ltbr ur v 5 Errlu.d* » Tnrfe-VnLiKr bIJA UbrvyIiJI uk' i Xpp Litrtfv *h ci ccft Fctu " t Cl m ::Qp«t Invent*r Li br vy ;_Mgu*',二* Lrhr,E* J Hi wiTfind
17、oiri Ibbn*findciri 32*bit"i?Tf indcwi KTi7inc fof*J § ZiF.c Lili * 上一芋|下二石 南谓 I 曲 |图 4.6选择软件库的配置信息PC-Lint对现在常用的一些软件库都提供了定制的配置信息,选择这些定制信息有助丁开发人员将错误或信息的注意力集中在自己的代码中,选择的支持库配置将被引入到STD.LN成件或新创建的STD_x.LN成件中。选择常用的ATL MFC STL等配置,然后点击“下一步”按钮:Author Reonwn«:n dal ionsTciiiwfiubi eh«cki pte
18、ifled by *r 修姑 of tBt fallowies<# >3%* rRUiiii- rf« M5fhg 匚/C* * jpn? wMM taro|ri«t< author cji + ifns fil4 ;x) into 5TIL LHT Th,” nir« hgmg tismet 口f bh, fi.jrw AV £xx UTTTwwy q£ tLi checks dvwt/d iur« fcy dtftult ftlriitdy ,瓦dl】iL3 i ecvirt cxvlfttiik ysu r i
19、t I w op lu ui tly x; tL»t i 言j>i cJki nr thUi you «thtrvi st 节quid *mL Jinttvo, i?f th ditcSi c1 *4 «r &. 蜜Hp/r m d w i tit c C4m ut4 11:114 «>ti om *r11 oiti pl *e « di 1 nJ上一步|亍二您 J 卑利 帮ftft I图4.7选择软件名人的编程建议这是一个比较有意思的选项,就是让你选择是否支持为使用 C/C+珈程提出过重 要建议的作者的一些关丁编程方面的个
20、人意见。如果选择某作者的建议,那么他 提出的编程建议方面的选项将被打开,作者建议的配置名为 AU-xxx.LNT,建议 全部选择,然后点击“下一步”按钮:f a1c>PClinl cut find your eonpilei'* e h#nd«r flIwe by ueiiic cut or广 SSciy thu xtttp ill 抑 ikii idly.)-上一步而)|下二,| 甲箱 峭斯 |图 4.8选择是否现在设置包含文件目录接下来是选择用何种方式设置包含文件目录,如果选择使用-i方式协助设置包含文件选项,下一步就会要求输入一个或多个包含路径。也可以跳过这一步,
21、以后手工修改配置文件,-i选项体现在STD.LN政件或新创建的STD_x.LNTi:件 中,每个目录前以-i引导,目录问以空格分隔,如果目录名中有长文称或包 含空格,使用时要加上双引号,如 -i “E:Program FilesMicrosoft VisualIndlue ”。这里我们选择用-i方式协助我们来设置,然后点击“下一步”按钮:图4.9选择是否现在设置包含文件目录这一步就是在下面的文本框里可手工输入文件包含路径,用分号“;”或用 ctrl+Enter换行来分割多个包含路径,或者可以点中Brows,在目录树中直接选 择。填完后点击“下一步”按钮:图4.10提示std_x.lnt已经被创
22、建因为第三步选择了 “ Create a new STD.LNT选项,所以出现以下对话框,表示 std_x.lnt , std.lnt 在配置路径下已被创建,这里的 std_a.lnt 实际上包含了 std.lnt的信息,除此之外还有我们选择的包含路径和库配置信息。单击“确 定”按钮继续:Another?二慕一可否 |Do you want to set up another conFigurdtion?图4.11提示是否为其它编译环境创建配置文件选择“确定”后,会接着提示是否为其它编译环境创建配置文件,如果选择 “是”将从第四步开始创建一个新的配置文件。这里我们选择“否”:图4.12是否替换
23、std.lnt 文件接下来会提示是否使用现在生成的std_x.lnt 文件取代std.lnt文件。如果选择“是”将会用std_x.lnt文件的内容覆盖std.lnt文件的内容,使得当前创建的配置选项成为以后面建新的配置文件时的缺省配置。通常我们选择“否”继续下Que>tfonn4irclii thq cfiip»r J Livitip vi th Llltt'i c«ntr«lly Iqcf iIt'OFTinKS 1JG thtt t tfl tdi your uvtr JI牌顷;ol:i cj'fnr fQtitiout (tbd
24、ut hvlf 410) cr*fttLtiC t fw jotne. oil ti om »ty b« tdd«d kt netdtd If y -u *l«ct to ikij' thi t lltp, ui 0TTI01S.UT til* till itill it ertiitd Hrt* thti you *ijr 1 it«r图4.13生成全局代码检查选项文件 OPTIONS.LNT接下来将会准备产生一个控制全局编译信息显示情况的选项文件OPTIONS.LNT该文件的产生方式有两种,一种是安装程序对几个核心选项逐一解释并提问
25、你是 否取消该选项,如果你选择取消,则会体现在OPTIONS.LNT件中,具体体现方 式是在该类信息编码前加-e ,后面有一系列逐一选择核心选项的过程。如果选择 第二种选择方式,安装文件会先生成一个空的 OPTIONS.LNT件,等你以后在实 际应用时加入必要的选项。这里选择“ N6'选项,即不取消这些选项,然后单击“下一步”:EnvironfiKnt Inv<xdtif>r»2£Jf il*i f t ,卜。i.-rft EKV-srSf* DTT (cTl* kjn 11 *!. ><*>- ii.t Mrj* tr.durji*
26、-if »: <r.i*r *n*b* j I。 i<+、ir困 fr". *1 ymt x-rkir.Frtfti Edtrz i (kt Eli3TFr iCtiV e licr»riti» Dt1An tn cut Cy>«4 cl 1'ilti £141 Hvtmtr kx»r0(>j*ct W*tw Sotwr c*零 S& xr c< Ins;Mi cro£4g* ¥1 iud. SI 1 ckEii tTurbfr/ B»rl IDE
27、皿DOS ¥以1 Ci 4 k D#vHl tF4t*fl t EUfcl C+* & it D*v :项)J(«XhV"k«il. Lat) j(*ak”r Lal)I (*a,rw Lat J 旷. .iL Iht) .(tnv-iltd Lht) j(*r»v-li J* LntJ 口!-wf 4 Int 1 Ini Jp (*hvf7 Lm I Flt*ny-r<l lhJjft IWL F&r*tt.1 .州 1 项.r.p.上.Xi理u.,; _£土,一<1 waioft 1C+* fftT&q
28、uot;H*l/ ml4 <* t« S<ct>dEi 3. 5.1S*!*!:t 0 or nr< £tr上一步鱼)|下米Qi j曜虬 峭购 |1图 4.14选择所支持的集成开发环境接着选择所支持的集成开发环境选项,可选多个或一个也不选,PC-Lint提供了集成在多种开发环境中工作的功能,例如可集成在VG BC Source Insight中。这里我们选择Microsift Visual C+ 6.0 ,这样env-v6.lnt 就会被拷贝到配置路径中。然后单击“下一步”:botch FdesLIH BAT should X m yctir PAT
29、H !« ihti 11 cui (4 run frw wy dlir4ct4ry te y*iir will *rJy mlit by riirjuittf LSFT !AT this sA44iwise, IEI.EAT xhvTdIt rw b4efr< usiei<FCl:intF yqw nty pr «£«r tg th« tints wf LSEIC EAI mtQWhi ch q£ th« follow!写总old you & il opy 口a ski r。mh 位 Hf rAirt j
30、4 m1. J厂 jr«>tXkQ ny iv-Aim airto1 t*4TWp wJEip wv I,.*上 坊企)I 下一步函图4.15选择LIN.BAT文件的使用方式安装程序会生成一个LIN.BAT文件,该文件是运行PC-Lint的批处理文件,为了 使该文件能在任何路径下运行,安装程序提供了两种方法供你选择。 第一种方法 是让你选择把LIN.BAT拷贝到任何一个PATH目录下。第二种方法是生成一个 LSET.BA仅件,在每次使用PC-LINT前先运行它来设置路径,或者把 LSET.BAT 文件的内容拷贝到AUTOEXEC.BAT件中。建议选择第一种方法,指定的目录为 当
31、前PC-Lint的安装目录。我们选择第一种方式:“ copy LIN.BAT to one of my PATH directory ”,然后单击“下一步”输入 PATH目录:PothYow currtnl /Hhn rti* ii i rctr-r v ln *hi -h tu copv上一步购|下一蜜如1卑策 耐勒 I图4.16指定PATH目录输入安装目录C:PCLint8作为PATH目录,然后单击“下一步”按钮进入最后的 确认窗口:TC-liat fur C/C+ v6 0 betiL confi fur«d m yc-xir a ichan« Tenuffi UZT
32、 UlL if)roi£'a i«t th, tsvirtiaitaivtr 11bl t Af t tr vhi rhj, you c tiiIAmi vpd.t.q to f il«ibtnti o:ntd i> tliii tG iu dj, ¥i n t our lKit it hvip /cw orcemtici m v t *ltctranic ntil tt上一步I:'芫贮T卑州| 峭斯|图4.17确认完成配置到此就完成了 PC-Lint的安装配置工作,单击“完成”按钮就可以使用 PC-Lint 了。以上配置过程中在配
33、置路径下产生的多个*.lnt文件,除了 std.lnt 、std_x.lnt 和 为配置向导所生成,其它 co-xxx.lnt 、lib-xxx.lnt 、env-xxx.lnt均是从原始安装目录中拷贝出来的,在这个目录下还有其它PCLint 所支持的编译器、库及集成开发环境的lnt配置文件,所有的lnt文件均为文本 文件。上面的配置方法适合丁刚开始接触 PC-lint时使用,对丁熟练的使用者可以 直接编辑、编写各*.lnt配置文件安成上面的配置工作,或者定制出更适合自己 使用的配置环境。第二步:安装vc+6.0,因为本文以编译器vc6为例子略 第三步:将pclint 集成
34、到vc6.0中在集成开发环境中,PC-Lint 8.0对VC+6和VC+7.0的支持是最完善的,支持直接从VC的工程文件(VC6是*.dsp, VC7是*.vcproj )导出对应工程的.Lnt文件,此文件包含了 工程设置中的预编译宏,头文件包含路径,源文件名,无需人工编写工程的 .Lnt文件。下面是集成到的 VC6中的tools设置说明,参见 C:Lint8lntenv-vc6.lnt中的注释:导出当前工程的.lnt文件(用来导出工程设置和源文件名,头文件包含路径),下面的对话框点击菜单的 Tools->Customize->Tools可以看到。Commands Toolbars
35、Tools Keyboard Add-ins and Macro FilesCommand:|CAPCLint8LINT-NrEXEArguments:|+linebuf $|TargetName).dsp>Sfr8rgetN8nieJntJniiial directory:|$|TargelDir)V.|7 Use Output Window Prompt for arguments F Close window on exitingClose图 PC_LINT 8.0 Export Project.LntCommand: C:PCLint8LINT-NT.EXEArgu
36、ments: +linebuf $(TargetName).dsp>$(TargetName).lntInitial directory: $(TargetDir).当修改过工程设置中的头文件包含路径、预编译宏或新增源文件后,需要重新导出工 程的lnt文件,否则修改后的设置无法自动体现在工程的lnt文件中。以上设置只要修改Command中的Lint-nt.exe所在路径即可。执行过这个命令后,$(TargetName).lnt 被放到 $(TargetName).dsp 所在目录中($(TargetDir).下),如果成功,打印 出的返回值为0 ,如果失败则返回非零值,具体出错信息需查看
37、$(TargetDir). $(TargetName).lnt 文件内容。其中$()的字串为VC的参数宏,调用工具命令时VC将它们替换为对应的字符串。$(TargetName)为当前激活的工程名(通过菜单Project->Set Active Project设置当前激活工程, 或在 WorkSpace的工程树上右键对应的工程选择Set as Active Projec ), $( TargetDir)为当前激活工程输出目标文件所在路径(一般缺省为工程所在目录下的Debug或Release目录),具体参数宏的含义说明参考MSDN中的VC的使用指南。在Initial directory 的$
38、(TargetDir).表示在这个目录下执行此命令。注:参数+linebuf表示加倍行缓冲的大小,最初是 600 bytes。行缓冲用于存放当前 行和你读到的最长行的信息。检查当前激活工程中当前窗口中的源文件。Cust»i zeCommands ToolbarsSpTargetNameflntClose window on exitingTools Keyboard Add-ins and Macro FilesMenu contents:POU NT 8.0 For P roject C he;些PC-LIMT 8.0 ForUnil CheckPC4JNT 8.0 Export
39、PmjectXnlPC-LIMT 8 J Export XML For Project Check POLI NT 7.5 For Unit CheckCommand:| C:PCLi m8LINT-NT.EXEArguments:|-i,'C:PCLint8,1 -u std. I nt enwc6.iniJniiial directory:|$|TargelDir)V.|7 Use Output Window Prompt for argumenis I-Close图 PC_LINT 8.0 For Unit CheckCommand: C:PCLint8LINT-N
40、T.EXEArguments: -i"C:PCLint8" -u std.lnt env-vc6.lnt $(TargetName).lnt "$(FilePath)”Initial directory: $(TargetDir).注意这一步最容易出错误。与。,路径不同,会出现找不到头文件的路径的情况执行此命令前提是$(TargetDir).目录下已经有工程的$(TargetName).lnt文件,这个文件 在步骤1中生成。第一个参数-i"C:PCLint8”为lint搜索*.lnt文件的目录,这里就是我们的配置路径。std.lnt就是前面配置过程中生成
41、编译环境的配置文件,如果有需要支持多个编译环境,可以直接改成对应的配置文件名,例如这里可以改为std_a.lnt,表示使用std_a.lnt中所配置的编译环境设置。最后一个参数”$(FilePath)”就是当前窗口中的带路径的源文件名。需要注意的是,当前 窗口中打开的源文件一定要属于当前激活的工程,否则 lint可能会出错。检查当前激活工程中的所有源文件。Custami2eCommands Toolbars Tools Keyboard Addins and Macro FilesMenu contents:PC-LINT 8.0 For Proiecl CheckPC-LINT 8.0 Fo
42、r Unit CheckPC4JNT 8.0 Export PmjectXnlPC-LIMT 8 J Export XML For Project CheckPOLI NT 7.5 For Unit CheckCommand:|CAPCLinl8LINT-NrEXEArguments:|+ffn -rC:PCUfitrytd.lnt envvc6nt$fargetN»me.lnt-Jnitial directory:|$|TargelDir)V|7 Use Output Window Prompt for arguments Close window on exitrngClose图
43、 PC_LINT 8.0 For Project CheckCommand: C:PCLint8LINT-NT.EXEArguments: +ffn -i"C:PCLint8" std.lnt env-vc6.lnt $(TargetName).lntInitial directory: $(TargetDir).执行此命令前提是$(TargetDir).目录下已经有工程的$(TargetName).lnt文件,这个文件 在步骤1中生成。此命令把$(TargetName).lnt中所包含的源文件lint 一遍,如果工程比较大的话,一般输 出的内容会超过 VC的
44、输出窗口的缓冲区大小,导致只能看到后面一部分Lint的信息,可以把Arguments改为+ffn -i"C:PCLint8" std.lnt env-vc6.lnt $(TargetName).lnt>$(TargetName).txt把结果输出到一个名为 $(TargetName).txt的文件里。注:参数中的+ffn表示Full File Names,可被用于控制是否使用的完整路径名称表示。CustomizeTools Keyboard | Add-ins and Macro FliesC:PCLint8LINT NT.EXIE|Command:Commands ToolbarsArguments:r'CAPCLinf'-u std_gJnt enwcB.Int 'AleNamelSlFlleEInitial directory:S|FileDir|V Use Output WindowPrompt for argumentsClose 诵nduw on exitingClose图4.19添加检查当前文件文件的定制命令
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 发电厂临时工工作制度
- 口岸服务中心工作制度
- 口腔科搬迁工作制度
- 2026湖北黄石市人事考试院招聘1人备考题库及答案详解参考
- 2026中盐舞阳盐化有限公司招聘4人备考题库附答案详解(a卷)
- 2026年福建泉州溪美街道社区卫生服务中心招聘工作人员备考题库附答案详解(基础题)
- 2026年烟台市委党校公开招聘博士研究生备考题库附答案详解(达标题)
- 2026江苏徐州恒顺万通食品酿造有限公司招聘6人备考题库及答案详解一套
- 2026广西贵港桂平市木根镇卫生院招聘编外工作人员的2人备考题库带答案详解
- 2026江铜铜箔科技股份有限公司招聘3人备考题库及答案详解(有一套)
- DZ∕T 0270-2014 地下水监测井建设规范
- DL-T5153-2014火力发电厂厂用电设计技术规程
- 金融学基础(第三版)课件:巧用保险
- 麻醉复苏期患者的护理
- 空气的热湿处理-空气热湿处理设备(通风与空调技术)
- 高中数学专题讲座课件
- 雅思阅读:雅思阅读复习计划
- 机电一体化项目教程 课件 导言、任务1-7 传感器技术-加盖拧盖单元
- 网络安全与信息防护
- 地下管线测量技术方案
- 动产融资金融仓平台技术白皮书
评论
0/150
提交评论