




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、2021/3/91LINUX 開發(fā)基礎(chǔ)湖北職院信息技術(shù)學(xué)院2021/3/92LINUX 開發(fā)基礎(chǔ)介紹開發(fā)基礎(chǔ)介紹nLinux 的編程概述的編程概述nLinuxLinux下下VIMVIM的使用的使用n編譯器編譯器GCCGCC的使用的使用n調(diào)試器調(diào)試器gdb的使用的使用n項目管理工具項目管理工具makemake的使用的使用2021/3/93Linux 編程環(huán)境概述編程環(huán)境概述lLinux 是使用 C 語言開發(fā)的,所以基于Linux 平臺的程序開發(fā),C語言是首選的開發(fā)語言。GCC是linux系統(tǒng)上的標(biāo)準(zhǔn)編譯器,C/C+語言也是Linux上程序設(shè)計的基本語言.l編輯器、編譯鏈接器、調(diào)試器及項目管理工具
2、。l編輯器Linux 中最常用的編輯器有 Vi(Vim)和 Emacsl編譯鏈接器在Linux中,最常用的編譯器是Gcc編譯器。它是GNU推出的功能強大、性能優(yōu)越的多平臺編譯器.l調(diào)試器Gdb 是絕大多數(shù) Linux 開發(fā)人員所使用的調(diào)試器,它可以方便地設(shè)置斷點、單步跟蹤等l項目管理器lLinux 中的項目管理器“make” 是一種控制編譯或者重復(fù)編譯軟件的工具。l它還能自動管理軟件編譯的內(nèi)容、方式和時機,使程序員能夠把精力集中在代碼的編寫上而不是在源代碼的組織上。2021/3/94Linux 的編程概述的編程概述l庫和頭文件的保存位置庫和頭文件的保存位置 l函數(shù)庫函數(shù)庫 l/lib:系統(tǒng)必備
3、共享庫:系統(tǒng)必備共享庫 l/usr/lib:標(biāo)準(zhǔn)共享庫和靜態(tài)庫:標(biāo)準(zhǔn)共享庫和靜態(tài)庫 l/usr/X11R6/lib:X11R6 的函數(shù)庫的函數(shù)庫 l/usr/local/lib:本地函數(shù)庫:本地函數(shù)庫 l頭文件頭文件 l/usr/include:用戶空間頭文件:用戶空間頭文件 l/usr/local/include:本地頭文件:本地頭文件 2021/3/95二、二、LinuxLinux下下VIMVIM的使用的使用lVIVI是是LinuxLinux最常用的編輯器,最常用的編輯器,LinuxLinux里提供的是里提供的是VIVI的加強版的加強版VIMVIM,但同但同VIVI是完全兼容。是完全兼容。
4、lVi 3Vi 3種基本工作模式:種基本工作模式:命令模式、插入模式、末行模式命令模式、插入模式、末行模式。2021/3/96二、二、LinuxLinux下下VIMVIM的使用的使用lVI 3VI 3種基本工作模式:種基本工作模式:l命令模式下,鍵入的每個字符都被當(dāng)作一個命令命令模式下,鍵入的每個字符都被當(dāng)作一個命令處理。剛啟動時,處于命令模式。在插入模式下處理。剛啟動時,處于命令模式。在插入模式下按按“ESCESC”,也可以回到指令模式。,也可以回到指令模式。l插入模式。在命令模式下按插入模式。在命令模式下按“a”a”、“i”i”、“o”o”進(jìn)入插入模式。進(jìn)入插入模式。l末行命令模式也是一種
5、常用模式,用于輸入命令末行命令模式也是一種常用模式,用于輸入命令進(jìn)行文字編輯的輔助功能。通過冒號進(jìn)行文字編輯的輔助功能。通過冒號“:”進(jìn)入進(jìn)入末行模式。例如末行模式。例如“:q”:q”2021/3/97二、二、LinuxLinux下下VIMVIM的使用的使用lVIMVIM進(jìn)入:進(jìn)入:在系統(tǒng)提示符在系統(tǒng)提示符“$”$”下鍵入命令下鍵入命令vimvim,后面跟上想要編輯(或者建立),后面跟上想要編輯(或者建立)的文件名,的文件名,VIM VIM 可以自動載入所要編輯的文件或是開啟一個新文件??梢宰詣虞d入所要編輯的文件或是開啟一個新文件。lVIMVIM的退出:的退出:可以在命令行方式下使用命令可以在
6、命令行方式下使用命令“:wq”:wq”或者或者“:q:q!”,前者的功能是寫,前者的功能是寫文件并從文件并從VIMVIM中退出,后者的功能是從中退出,后者的功能是從VIMVIM中退出,但不保存所作的修中退出,但不保存所作的修改(注意冒號)。改(注意冒號)。lVimVim中的語法加亮:中的語法加亮::syntax enable ,也可以在配置文件中激活該功能。,也可以在配置文件中激活該功能。2021/3/98LinuxLinux下下VIMVIM的使用的使用lVimrc配置文件配置文件lVim在啟動時會讀取該文件。該文件可以放在用戶目錄下在啟動時會讀取該文件。該文件可以放在用戶目錄下/.vimrc
7、,/etc/vim/vimrcl編寫語法可參考編寫語法可參考vi的用戶手冊的的用戶手冊的41章。章。lVim的使用教程:推薦使用的使用教程:推薦使用vimtutor,學(xué)習(xí)學(xué)習(xí)vim的最好方式就是練習(xí),的最好方式就是練習(xí),而而vimturor是非常好的教學(xué)平臺。是非常好的教學(xué)平臺。lVimtutor 使用系統(tǒng)默認(rèn)語言使用系統(tǒng)默認(rèn)語言lVimtutor en 英文教程英文教程l練習(xí)練習(xí)vim的使用的使用2021/3/99vi的常用命令的常用命令命令說明功能鍵h向左移一個字符 I向右移一個字符 J向上移一個字符 k向下移一個字符 0移至該行之首 Home $移至該行之末 End 2021/3/910
8、H 移至窗口的第一行 M 移至窗口的中間那行 L 移至窗口的最后一行 G 移至該文件的最后一行 nG 移至該文件的第 n 行 Ctrl+f 向后翻一頁 PageDown Ctrl+b 向前翻一頁 PageUp 移至該行的第一個非空白字符處 2021/3/911命令 說明 功能鍵 x 刪除光標(biāo)后的字符 Delete X 刪除光標(biāo)前的字符 dd 刪除光標(biāo)所在的行 ndd 刪除包括光標(biāo)所在行的n行文本 r 修改光標(biāo)所在字符 2021/3/912R 進(jìn)入替換狀態(tài),直到按Esc回到命令模式為止 Insert s 刪除光標(biāo)所在字符,并進(jìn)入輸入模式 S 刪除光標(biāo)所在的行,并進(jìn)入輸入模式 u 恢復(fù)剛才被修改的
9、文本 U 恢復(fù)光標(biāo)所在行的所有修改 . 重復(fù)上一次命令的操作 2021/3/913命令 說明 Y 復(fù)制當(dāng)前行至編輯緩沖區(qū) nY 復(fù)制當(dāng)前行開始的n行至編輯緩沖區(qū) p 將編輯緩沖區(qū)的內(nèi)容粘貼到光標(biāo)后的一行 P 將編輯緩沖區(qū)的內(nèi)容粘貼到光標(biāo)前的一行 a 從光標(biāo)所在位置后面開始新增文本 2021/3/914命令 命令說明A 從光標(biāo)所在行最后面的地方開始新增文本 i 從光標(biāo)所在位置前面開始插入文本 I 從光標(biāo)所在列的第一個非空白字元前面開始插入文本 o 在光標(biāo)所在列下新增一行并進(jìn)入輸入模式 O 在光標(biāo)所在列上方新增一行并進(jìn)入輸入模式 2021/3/915命令 說明 :q 結(jié)束編輯 :q! 強制離開vi
10、,放棄存盤 :w 存盤 :w filename 將編輯內(nèi)容保存為名為filename的文件 :wq 存盤并退出 2021/3/916GCCGCC編譯器的使用編譯器的使用lGNU C lANSI C (標(biāo)準(zhǔn) C )lGNU C 支持GNU 擴展的C 語言。GNU CC對C 語言提供了很多擴展,這些擴展對優(yōu)化、目標(biāo)代碼布局、更安全的檢查等方面提供了很強的支持。 lLinux 內(nèi)核代碼使用了大量的 GNU C 擴展,以至于能夠編譯 Linux 內(nèi)核的唯一編譯器是 GNU CC。2021/3/917GCCGCC編譯器的使用編譯器的使用lGCC(GNU Compiler Collection)lGNU
11、CC(簡稱為 Gcc)是 GNU 項目中符合 ANSI C 標(biāo)準(zhǔn)的編譯系統(tǒng),能夠編譯用 C、C+和 Object C 等語言編寫的程序。l Gcc 又是一個交叉平臺編譯器 在當(dāng)前CPU平臺上為多種不同體系結(jié)構(gòu)的硬件平臺開發(fā)軟件。適合在嵌入式領(lǐng)域的開發(fā)編譯。2021/3/918GCCGCC編譯器的使用編譯器的使用lgcc則通過后綴來區(qū)別輸入文件的類別。 gcc所遵循的部分后綴約定規(guī)則:l.c : C語言源代碼文件; l.a : 是由目標(biāo)文件構(gòu)成的檔案庫文件; l.C,.cc或.cxx : 是C+源代碼文件; l.h : 是程序所包含的頭文件; l.i : 是已經(jīng)預(yù)處理過的C源代碼文件;l.ii
12、: 是已經(jīng)預(yù)處理過的C+源代碼文件;l.o : 是編譯后的目標(biāo)文件; l.s : 是匯編語言源代碼文件; l.S : 是經(jīng)過預(yù)編譯的匯編語言源代碼文件。 2021/3/919GCCGCC編譯器的使用編譯器的使用lGCCl通常gcc后跟一些選項和文件名來使用 GCC 編譯器 gcc options filenames 其中options就是編譯器所需要的參數(shù),filenames給出相關(guān)的文件名稱l例如:gcc o hello hello.c2021/3/920GCCGCC編譯器的使用編譯器的使用lGcc的編譯流程分4個步驟:l預(yù)處理(Pre-Processing)l編譯(Compiling)l匯
13、編(Assembling)l鏈接(Linking)l每個階段分別調(diào)用不同的工具進(jìn)行處理。預(yù)處理鏈接編譯匯編源 程 序(*.c)可執(zhí)行文件預(yù)處理器編譯器匯編器連接器2021/3/921GCCGCC編譯器的使用編譯器的使用預(yù)處理鏈接編譯匯編源程序(*.c)可執(zhí)行文件預(yù)處理器編譯器匯編器連接器nGCC首先調(diào)用預(yù)處理程序cpp進(jìn)行預(yù)處理,展開程序代碼中的宏,并在其中插入頭文件所包含的內(nèi)容;n把預(yù)處理后的源代碼編譯產(chǎn)生匯編代碼;n調(diào)用as匯編器處理這些匯編代碼產(chǎn)生目標(biāo)代碼;n通過ld連接器創(chuàng)建二進(jìn)制可執(zhí)行文件或者建立庫文件。2021/3/922GCCGCC編譯器的使用編譯器的使用lGcc的編譯流程l預(yù)處
14、理階段: gcc E hello.c o hello.il編譯階段:gcc S hello.i o hello.sl匯編階段:gcc c hello.s o hello.ol鏈接階段:gcc hello.o o hellol執(zhí)行:./hello2021/3/923GCCGCC編譯器的使用編譯器的使用lGCC的選項 lGCC 有超過100個的編譯選項可用. 主要包括編譯處理選項、警告選項、出錯選項、優(yōu)化選項、體系結(jié)構(gòu)選項。l -c,只編譯,不連接成為可執(zhí)行文件,編譯器只是由輸入的.c等源代碼文件生成.o為后綴的目標(biāo)文件,通常用于編譯不包含主程序的子程序文件。l-o output_filename
15、,確定輸出文件的名稱為output_filename,同時這個名稱不能和源文件同名。如果不給出這個選項,gcc就給出預(yù)設(shè)的可執(zhí)行文件a.out。l-S 編譯選項告訴 GCC 在為 C 代碼產(chǎn)生了匯編語言文件后停止編譯. GCC 產(chǎn)生的匯編語言文件的缺省擴展名是 .s . 2021/3/924GCCGCC編譯器的使用編譯器的使用lGCC 選項l-g,產(chǎn)生符號調(diào)試工具(GNU的gdb)所必要的符號信息,要想對源代碼進(jìn)行調(diào)試,我們就必須加入這個選項。l-O,對程序進(jìn)行優(yōu)化編譯、連接,產(chǎn)生的可執(zhí)行文件的執(zhí)行效率可以提高,但是,編譯、連接的速度就相應(yīng)地要慢一些。l-O2,比-O更好的優(yōu)化編譯、連接,當(dāng)然
16、整個編譯、連接過程會更慢。2021/3/925GCCGCC編譯器的使用編譯器的使用lGCC 選項l-Idirname,在頭文件的搜索路徑列表中添加dirname目錄。這個選項的作用是:到指定的dirname目錄中去尋找需要的頭文件。l-Ldirname,在庫文件的搜索路徑列表中添加dirname目錄。在預(yù)設(shè)狀態(tài)下,連接程序ld在系統(tǒng)的預(yù)設(shè)路徑中(如/usr/lib)尋找所需要的檔案庫文件,這個選項 告訴連接程序,首先到-L指定的目錄中去尋找,然后到系統(tǒng)預(yù)設(shè)路徑中尋找。l-lname,在連接時,裝載名字為“l(fā)ibname.a”的函數(shù)庫,該函數(shù)庫位于系統(tǒng)預(yù)設(shè)的目錄或者由-L選項確定的目錄下。例如,
17、-lm表示連接名為“l(fā)ibm.a”的數(shù)學(xué)函數(shù)庫。2021/3/926GCCGCC編譯器的使用編譯器的使用lGCC 選項l更為詳盡的資料可以參看Linux系統(tǒng)的聯(lián)機幫助。 (man)l很多的 GCC 選項包括一個以上的字符. 因此你必須為每個選項指定各自的連字符, 并且就象大多數(shù) Linux 命令一樣你不能在一個單獨的連字符后跟一組選項.l gcc g O2 o hello hello.clgcc包含的c/c+編譯器 l一般c程序就用gcc編譯,c+程序就用g+編譯 2021/3/927GCCGCC編譯器的使用編譯器的使用l練習(xí)使用gcc編譯C源文件l通過Hello world程序,熟悉gcc及
18、其選項的使用。lHello Worldhello.Cint main (void) printf(“hello world!n”);return 0;編譯編譯$ gcc -o hello hello.c 2021/3/928GCCGCC編譯器的使用編譯器的使用l多個多個c文件文件兩個源文件兩個源文件 main.c 和和 factorial.c 兩個源文件,現(xiàn)在要編譯生成兩個源文件,現(xiàn)在要編譯生成一個計算階乘的程序。一個計算階乘的程序。 factorial.cint factorial (int n) if (n = 1) return 1; else return factorial (n -
19、 1) * n;2021/3/929GCCGCC編譯器的使用編譯器的使用l多個多個c文件文件 factorial.c main.c#include #include int factorial (int n);int main (int argc, char *argv) int n; if (argc 2) printf (Usage: %s nn, argv 0); return -1; else n = atoi (argv1); printf (Factorial of %d is %d.n, n, factorial (n); return 0; 2021/3/930GCCGCC編譯
20、器的使用編譯器的使用l多個多個c文件文件編譯:編譯:$ gcc -o factorial main.c factorial.c 練習(xí)編譯多個練習(xí)編譯多個c文件文件2021/3/931Gdb 調(diào)試器調(diào)試器lGdb 使用流程lGdb 調(diào)試器是一款GNU 開發(fā)組織并發(fā)布的 UNIX/Linux 下的程序調(diào)試工具。lGdb讓您能夠看到一個程序的內(nèi)部結(jié)構(gòu),指出變量的值,設(shè)置斷點并在源碼中進(jìn)行單步執(zhí)行。 2021/3/932Gdb 調(diào)試器調(diào)試器lGdb 使用流程l要使用gdb進(jìn)行調(diào)試,一定要在編譯時加上調(diào)試選項“-g”。lgcc -g test.c -o testlgdb testl使用“help”命令查
21、看幫助信息。2021/3/933Gdb 調(diào)試器調(diào)試器lGdb的簡單使用l查看文件 ll設(shè)置斷點 b 行號l查看斷點情況 info bl開始運行代碼 r runl臨時查看變量值 p變量l長期監(jiān)視變量值 disp 變量 或 watch 變量l單步運行 “n” (next)或“s” step)l若有函數(shù)調(diào)用的時候, “s”會進(jìn)入該函數(shù)而“n”不會進(jìn)入該函數(shù)。l恢復(fù)程序運行 “c” (continue),在斷點處停止。2021/3/934Gdb 調(diào)試器調(diào)試器lGdb 基本命令l通過查看 help 查找命令。lGdb 的 help 將其分成了很多種類(class)。l helpl Help “種類” 查
22、看該種類中的命令列表l Help 命令l已知命令名:Help 命令2021/3/935Gdb 調(diào)試器調(diào)試器lGdb 基本命令l工作環(huán)境相關(guān)命令l對程序相關(guān)的工作環(huán)境進(jìn)行相應(yīng)的設(shè)定l使用shell中的命令進(jìn)行相關(guān)的操作2021/3/936Gdb 調(diào)試器調(diào)試器lGdb 基本命令l設(shè)置斷點與恢復(fù)命令2021/3/937Gdb 調(diào)試器調(diào)試器lGdb 基本命令l設(shè)置斷點有多種方式:l函數(shù)斷點: “b 函數(shù)”此時的斷點實際是在函數(shù)的定義處l條件斷點:b 行數(shù)或函數(shù)名 if 表達(dá)式b 8 if i=102021/3/938Gdb 調(diào)試器調(diào)試器lGdb 基本命令lGdb 中源碼查看相關(guān)命令2021/3/939
23、Gdb 調(diào)試器調(diào)試器lGdb 基本命令lGdb 中查看運行數(shù)據(jù)相關(guān)命令2021/3/940項目管理工具項目管理工具makemake的使用的使用lMake介紹lMake是一種控制編譯或者重復(fù)編譯軟件的非常重要的工具。Make 可自動決定一個大程序中哪些文件需要重新編譯,并執(zhí)行重新編譯它們的命令。 l要使用make,必須編寫一個叫做Makefile的文件。Makefile文件是定義make如何執(zhí)行的規(guī)則文件,它包含一些規(guī)則告訴make工具編譯哪些文件、怎么編譯以及在什么條件下去編譯。lMakefile寫好之后,每次改變了某些源文件,只要執(zhí)行make命令,所有必要的重新編譯將執(zhí)行。lMake程序通過
24、比較目標(biāo)文件的生成時間和其所依賴的源文件的最后修改時間和來決定是否執(zhí)行makefile中定義的命令來更新該目標(biāo)文件。2021/3/941項目管理工具項目管理工具makemake的使用的使用l例子:hello:hello.ogcc hello.o o hellohello.o: hello.cgcc c hello.c o hello.o則輸入:make即可生成可執(zhí)行程序hello2021/3/942項目管理工具項目管理工具makemake的使用的使用lMakefile文件的基本結(jié)構(gòu)lMakefile包含一些規(guī)則來告訴make處理哪些文件以及如何處理這些文件。l這些規(guī)則主要是描述哪些文件(稱為t
25、arget目標(biāo)文件,不要和編譯時產(chǎn)生的目標(biāo)文件相混淆)是從哪些別的文件(稱為dependency依賴文件)中產(chǎn)生的,以及用什么命令(command)來執(zhí)行這個過程。每條規(guī)則包含以下內(nèi)容:l一個“目標(biāo)體”。即可是可執(zhí)行文件和目標(biāo)文件,目標(biāo)也可以是要執(zhí)行的動作。l一個或多個依賴文件(dependency)列表。l一系列命今(command),是make執(zhí)行的動作,通常是把指定的相關(guān)文件編譯成目標(biāo)文件的編譯命令,每個命令占一行,且每個命令行的起始字符必須為TAB字符。 2021/3/943項目管理工具項目管理工具makemake的使用的使用lMakefile文件的基本結(jié)構(gòu)lMakefile規(guī)則的一般
26、形式如下:target:dependency dependency(tab)ltarget也就是一個目標(biāo)文件,可以是Object File,也可以是執(zhí)行文件。還可以是一個標(biāo)簽(Label)。ldependency要生成target所需要的文件或是目標(biāo)。lcommand也就是make需要執(zhí)行的命令。可以是任意的Shell命令。調(diào)用make命令可輸入:# make targettarget是Makefile文件中定義的目標(biāo)之一,如果省略target,make就將生成Makefile文件中定義的第一個目標(biāo)。2021/3/944項目管理工具項目管理工具makemake的使用的使用lmake處理make
27、file文件的過程l首先make按順序讀取makefile中的規(guī)則,然后檢查該規(guī)則中的依賴文件與目標(biāo)文件的時間戳哪個比較新。l如果目標(biāo)文件的時問戳比依賴文件還早,就按規(guī)則中定義的命令更新目標(biāo)文件。l如果該規(guī)則中的依賴文件又是其他規(guī)則中的目標(biāo)文件,那么依照規(guī)則鏈不斷執(zhí)行這個過程,直到Makefile文件的結(jié)束,至少可以找到一個不是規(guī)則生成的最終依賴文件,獲得此文件的時間戳,然后從下到上依照規(guī)則鏈執(zhí)行目標(biāo)文件的時間戳比此文件時間戳舊的規(guī)則,直到最頂層的規(guī)則。l通過以上的分析過程,可以看到make的優(yōu)點,因為.o目標(biāo)文件依賴.c源文件,源碼文件里一個簡單改變都會造成那個文件被重新編譯,并根據(jù)規(guī)則鏈依
28、次由下到上執(zhí)行編譯過程,直到最終的可執(zhí)行文件被重新連接。2021/3/945項目管理工具項目管理工具makemake的使用的使用l例子:l設(shè)一項目中包函頭源文件prog.c、sub.c和一頭文件sub.h,并在源文件prog.c、sub.c中都包含了頭文件sub.hl則Makefile可寫為:ltest:prog.o sub.ogcc -o test prog.o sub.olprog.o:prog.c sub.hgcc -c prog.c o prog.olsub.o:sub.c sub.hgcc c sub.c -o sub.olclean:rm -f *.o test運行 make命令即
29、生成test運行 make clean清除生成的文件2021/3/946項目管理工具項目管理工具makemake的使用的使用lMakefile中的變量中的變量lMakefile里的變量對大小寫敏感,一般使用大寫宇母。變量的主要作用如下: l保存文件名列表。l保存可執(zhí)行命令名,如編譯器。l保存編譯器的參數(shù)。在很多源代碼編譯時,gcc需要很長的參數(shù)選項,在很多情況下,所有的編譯命令使用一組相同的選項,如果把這組選項使用一個變量代表,那么可以把這個變量放在所有引用編譯器的地方。當(dāng)要改變選項的時候,只需改變一次這個變量的內(nèi)容即可。2021/3/947項目管理工具項目管理工具makemake的使用的使用
30、lMakefile中的變量中的變量lMakefile中的變量是用一個文本串在Makefile中定義的,這個文本串就是變量的值。只要在一行的開始寫下這個變量的名字,后面跟一個“”號,以及要設(shè)定這個變量的值即可定義變量,定義變量的語法: VARNAME=stringl使用時,把變量用括號括起來,并在前面加上$符號,就可以引用變量的值: $VARNAME、$(VARNAME)lmake解釋規(guī)則時,VARNAME在等式右端展開為定義它的字符串。變量一般都在Makefile的頭部定義。2021/3/948項目管理工具項目管理工具makemake的使用的使用利用變量把前面的Makefile重寫一遍:OBJS=prog.o sub.oCC=gcc test:$ OBJS $ CC o test $ OBJS prog.o:prog.c sub.h$ CC c prog.c o prog.o sub.o:sub.c sub.h$ CC c sub.c o sub.o clean:rm f *.o test20
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 掛靠聯(lián)營協(xié)議合同
- 各行業(yè)人才招聘量統(tǒng)計表
- 二手房房屋買賣合同書
- 礦用管路安裝施工方案
- 萃取塔清洗施工方案
- 屋面臺階維修施工方案
- 衡水罐體鐵皮保溫施工方案
- 腦血管病用藥項目風(fēng)險識別與評估綜合報告
- 安徽拼接式蓄水池施工方案
- 同花順:2024年年度審計報告
- 10廣東省事業(yè)單位工作人員年度考核登記表(申報評審衛(wèi)生版表十)
- 幼兒游戲活動指導(dǎo)第二版全套教學(xué)課件
- 南京市城市用地分類和代碼標(biāo)準(zhǔn)
- 教育管理學(xué)(陳孝彬第三版)筆記整理
- 向下管理高爾夫-完整備注版104張課件
- 護(hù)理技術(shù)操作考核評分標(biāo)準(zhǔn)患者約束法
- 慢性心功能不全的護(hù)理查房
- 電氣第一種第二種工作票講解-課件
- 輸血與創(chuàng)傷性凝血病
- 人工挖孔樁爆破技術(shù)方案
- 2023年牡丹江大學(xué)單招面試題庫及答案解析
評論
0/150
提交評論