開發(fā)環(huán)境配置方法_第1頁
開發(fā)環(huán)境配置方法_第2頁
開發(fā)環(huán)境配置方法_第3頁
開發(fā)環(huán)境配置方法_第4頁
開發(fā)環(huán)境配置方法_第5頁
已閱讀5頁,還剩46頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、1第14章 標(biāo)準(zhǔn)庫配置開發(fā)環(huán)境1、配置API庫開發(fā)環(huán)境3第13章高級編程技術(shù)實(shí)現(xiàn)應(yīng)用程序開發(fā),除需要大量C+語言編程訓(xùn)練、掌握必要的算法和數(shù)據(jù)結(jié)構(gòu)理論知識之外,還要學(xué)習(xí)高級編程技術(shù)。高級編程技術(shù)有很強(qiáng)的專業(yè)性,涉及內(nèi)容廣泛。通??梢苑譃橄到y(tǒng)編程、界面編程、多媒體編程、網(wǎng)絡(luò)編程、數(shù)據(jù)庫編程、硬件編程等六個領(lǐng)域。本章將介紹在Windows系統(tǒng)下利用C+語言進(jìn)行應(yīng)用程序開發(fā)的基本知識。在C+語言發(fā)展進(jìn)程中,無數(shù)科學(xué)家和程序員開發(fā)出數(shù)量眾多、性能卓越的專業(yè)函數(shù)庫,充分利用好這些函數(shù)庫是編寫應(yīng)用程序的重要技巧。413.1.1 開發(fā)環(huán)境的路徑參數(shù)C+語言開發(fā)工具安裝后,一般會自動配置好標(biāo)準(zhǔn)函數(shù)庫的使用環(huán)境

2、。因此使用標(biāo)準(zhǔn)庫函數(shù)的C+程序,可以直接編譯和連接。但如果是使用其他的專業(yè)函數(shù)庫,如GSL科學(xué)計算函數(shù)庫,就需要配置開發(fā)環(huán)境。本節(jié)針對VC和CodeBlocks,介紹在Windows系統(tǒng)下專業(yè)函數(shù)庫的配置。513.1.1 開發(fā)環(huán)境的路徑參數(shù)假設(shè)VC安裝文件夾為(如C:NTDEVMSVS6VC98),CodeBlocks安裝文件夾為(如C:NTDEVCodeBlocksMinGW)。由于需要經(jīng)常使用開發(fā)工具的命令行實(shí)用程序,所以安裝時文件夾名稱最好不要有空格,比如像“C:Program Files”。如圖所示為VC和CodeBlocks安裝文件夾的目錄結(jié)構(gòu)。613.1.1 開發(fā)環(huán)境的路徑參數(shù)圖1

3、3.1 Visual C+和CodeBlocks安裝文件夾目錄結(jié)構(gòu)713.1.1 開發(fā)環(huán)境的路徑參數(shù)可以看到在和文件夾中都有include和lib兩個文件夾,大多數(shù)C+語言開發(fā)工具基本如此。813.1.1 開發(fā)環(huán)境的路徑參數(shù)1系統(tǒng)INCLUDE路徑include文件夾存放開發(fā)工具默認(rèn)安裝的全部頭文件,稱為系統(tǒng)INCLUDE路徑。可以在這個文件夾中找到我們所熟悉的stdio.h和math.h文件。系統(tǒng)INCLUDE路徑是開發(fā)工具查找頭文件的基礎(chǔ)路徑,例如math.h頭文件包含命令:#include 913.1.1 開發(fā)環(huán)境的路徑參數(shù)尖括號內(nèi)的頭文件使用相對路徑寫法(相對于系統(tǒng)INCLUDE路徑)

4、。由于math.h在系統(tǒng)INCLUDE路徑中,所以文件名前面不用寫路徑。如果程序中欲包含includeglgl.h頭文件,由于gl.h文件是在系統(tǒng)INCLUDE路徑的gl子文件夾中,因此文件包含命令應(yīng)為:#include 1013.1.1 開發(fā)環(huán)境的路徑參數(shù)2系統(tǒng)LIB路徑lib文件夾存放開發(fā)工具默認(rèn)安裝的全部庫文件,稱為系統(tǒng)LIB路徑。VC的庫文件擴(kuò)展名為.lib,GCC的庫文件擴(kuò)展名為.a。系統(tǒng)LIB路徑是開發(fā)工具連接庫文件的基礎(chǔ)路徑,同樣使用相對路徑來查找?guī)煳募?113.1.1 開發(fā)環(huán)境的路徑參數(shù)3搜索路徑在Windows操作系統(tǒng)中,在“控制面板/系統(tǒng)/高級/環(huán)境變量”中有一項(xiàng)“PAT

5、H”參數(shù),它是Windows的系統(tǒng)PATH路徑。當(dāng)一個程序運(yùn)行時,如果需要用到附加的動態(tài)鏈接庫DLL(dynamic linking library)文件,則Windows規(guī)定該DLL文件要么與程序同處一個文件夾,要么在系統(tǒng)PATH路徑中,否則程序不能運(yùn)行。我們將程序所處的文件夾和PATH路徑統(tǒng)稱為搜索路徑,即查找運(yùn)行時文件的路徑范圍,它可以是多個文件夾的集合。1213.1.1 開發(fā)環(huán)境的路徑參數(shù)顯然,通過編輯系統(tǒng)PATH路徑,可以更改搜索路徑。一般地,Windows系統(tǒng)文件夾(如C:WINDOWS或C:WINDOWSsystem32)是搜索路徑之一。如果將DLL文件復(fù)制到這個文件夾中,程序運(yùn)

6、行時能夠找到它。1313.1.2 開發(fā)環(huán)境的路徑設(shè)置開發(fā)工具的圖形界面通常允許程序員設(shè)置系統(tǒng)INCLUDE路徑和系統(tǒng)LIB路徑。1413.1.2 開發(fā)環(huán)境的路徑設(shè)置在CodeBlocks中,單擊“Settings/Compiler and debugger.”(設(shè)置/編譯器和調(diào)試器.)菜單,打開“Compiler and debugger settings”(編譯器和調(diào)試器設(shè)置)對話框,如圖所示。1513.1.2 開發(fā)環(huán)境的路徑設(shè)置單擊“Search directories”(搜索路徑)標(biāo)簽,選擇“Compiler或Linker”(編譯器或鏈接器)可以設(shè)置CodeBlocks的系統(tǒng)INCLUD

7、E路徑和系統(tǒng)LIB路徑。在“Search directories”標(biāo)簽中可以任意添加、刪除、修改CodeBlocks的系統(tǒng)INCLUDE路徑和系統(tǒng)LIB路徑。系統(tǒng)INCLUDE路徑標(biāo)簽系統(tǒng)LIB路徑標(biāo)簽1613.1.2 開發(fā)環(huán)境的路徑設(shè)置需要注意,上述路徑設(shè)置對開發(fā)工具而言是全局性的,即路徑設(shè)置對每個程序和項(xiàng)目工程都是有效的。1713.1.2 開發(fā)環(huán)境的路徑設(shè)置在VC中,單擊“Tools/Options.”菜單打開“Options”對話框,如圖所示。單擊“Directories”標(biāo)簽,選擇“Show directories for:”可以看到VC的系統(tǒng)INCLUDE路徑和系統(tǒng)LIB路徑。圖中顯

8、示VC的系統(tǒng)INCLUDE路徑有兩個:“C:DEVMSVS6VC98include”和“C:DEVMSSDK6include”。如果一個頭文件ctype.h存放在這兩個文件夾之一,則文件包含命令為:在“Directories”標(biāo)簽中可以任意添加、刪除、修改VC的系統(tǒng)INCLUDE路徑和系統(tǒng)LIB路徑。1813.1.2 開發(fā)環(huán)境的路徑設(shè)置圖13.3 Visual C+的系統(tǒng)INCLUDE路徑和系統(tǒng)LIB路徑系統(tǒng)INCLUDE路徑系統(tǒng)LIB路徑1913.1.3 開發(fā)環(huán)境的配置通常,一個提供給程序員使用的專業(yè)函數(shù)庫有四部分內(nèi)容:頭文件(header);庫文件(library);運(yùn)行時文件(runti

9、me);使用手冊文檔。2013.1.3 開發(fā)環(huán)境的配置頭文件的作用是讓程序有函數(shù)原型、數(shù)據(jù)結(jié)構(gòu)、宏常量等聲明。一般情況下,編譯程序時如果出現(xiàn)類似“某某函數(shù)未定義或數(shù)據(jù)未定義”的錯誤,說明專業(yè)函數(shù)庫的頭文件路徑?jīng)]有配置好。2113.1.3 開發(fā)環(huán)境的配置庫文件的作用是讓程序能夠連接函數(shù)的二進(jìn)制目標(biāo)代碼。一般情況下,連接程序時如果出現(xiàn)類似“某某函數(shù)未找到”的錯誤,說明專業(yè)函數(shù)庫的庫文件路徑?jīng)]有配置好。2213.1.3 開發(fā)環(huán)境的配置有的專業(yè)函數(shù)庫需要運(yùn)行時文件(如動態(tài)鏈接庫),通常要將這些文件存放到搜索路徑上,使用專業(yè)函數(shù)庫的程序運(yùn)行時才能找到它們。典型的做法是將這些文件復(fù)制到Windows系統(tǒng)文

10、件夾中。2313.1.3 開發(fā)環(huán)境的配置專業(yè)函數(shù)庫的使用手冊文檔使程序員能夠正確調(diào)用庫函數(shù),包含函數(shù)原型、函數(shù)功能、參數(shù)要求、數(shù)據(jù)含義等說明。2413.1.3 開發(fā)環(huán)境的配置專業(yè)函數(shù)庫頭文件和庫文件的配置一般有三種方法。(1)復(fù)制文件法可以將專業(yè)函數(shù)庫的頭文件和庫文件全部復(fù)制到開發(fā)工具的系統(tǒng)INCLUDE路徑和系統(tǒng)LIB路徑中,例如include和lib文件夾、include和lib文件夾。如果專業(yè)函數(shù)庫的頭文件比較多或者為了與標(biāo)準(zhǔn)庫的頭文件存放時有所區(qū)別,可以將頭文件復(fù)制到系統(tǒng)INCLUDE路徑的一個子文件夾中,但此時#include命令要包含相應(yīng)的子文件夾路徑。2513.1.3 開發(fā)環(huán)境的

11、配置復(fù)制文件的方法操作簡單,操作一次后使得開發(fā)工具持久支持專業(yè)函數(shù)庫,如同標(biāo)準(zhǔn)函數(shù)庫一般。該方法的缺點(diǎn)是開發(fā)工具系統(tǒng)路徑中的文件會越來越多,而且專業(yè)函數(shù)庫新版本的升級控制有一定的難度,各版本之間的文件容易混淆,給庫連接帶來潛在沖突。2613.1.3 開發(fā)環(huán)境的配置(2)添加路徑法利用開發(fā)工具的圖形界面可以將專業(yè)函數(shù)庫頭文件和庫文件所處的文件夾分別添加到開發(fā)工具的系統(tǒng)INCLUDE路徑和系統(tǒng)LIB路徑中。添加路徑的方法操作簡單,操作一次后也使得開發(fā)工具持久支持專業(yè)函數(shù)庫,而且有便于控制函數(shù)庫版本升級的優(yōu)點(diǎn)。當(dāng)獲得了專業(yè)函數(shù)庫新版本時,只需要將原先添加的路徑指向新版本的文件夾路徑即可。2713.1

12、.3 開發(fā)環(huán)境的配置(3)搜索路徑法如果使用開發(fā)工具命令行版本的編譯程序和連接程序,例如VC的“CL.exe”和CodeBlocks的“gcc.exe”,可以用搜索路徑來設(shè)置系統(tǒng)INCLUDE路徑和系統(tǒng)LIB路徑。方法是在Windows“控制面板/系統(tǒng)/高級/環(huán)境變量”中設(shè)置環(huán)境變量參數(shù),表13-1為VC和GCC對應(yīng)的環(huán)境變量參數(shù)。當(dāng)使用命令行開發(fā)工具進(jìn)行C程序編譯和連接時,會將環(huán)境變量“INCLUDE”和“LIB”作為查找路徑去搜索頭文件和庫文件。2813.1.3 開發(fā)環(huán)境的配置表13-1 開發(fā)工具環(huán)境變量參數(shù)類別類別Visual C+Code:Blocks系統(tǒng)系統(tǒng)INCLUDE路徑路徑IN

13、CLUDEC_INCLUDE_PATH(C語言),語言),CPLUS_INCLUDE_PATH(C+)系統(tǒng)系統(tǒng)LIB路徑路徑LIBLIBRARY_PATH2913.1.3 開發(fā)環(huán)境的配置此外,命令行“CL.exe”和“gcc.exe”程序本身有定位頭文件和庫文件的命令參數(shù),形式分別如下:具體細(xì)節(jié)可以參考CL和gcc的使用手冊。CL /Idir 指明編譯時頭文件的查找文件夾指明編譯時頭文件的查找文件夾dirCL /link libfile 指明連接庫指明連接庫libfilegcc -Idir 指明編譯時頭文件的查找文件夾指明編譯時頭文件的查找文件夾dirgcc Ldir 指明庫文件的查找文件夾指

14、明庫文件的查找文件夾dirgcc llibfile 指明連接庫指明連接庫libfile3013.1.3 開發(fā)環(huán)境的配置設(shè)置搜索路徑的方法操作繁瑣,一般適用于命令行編譯和連接方式,初學(xué)程序者掌握起來有一定難度。本質(zhì)上,所有的開發(fā)工具都使用命令行方式編譯和連接程序,如VC或者CodeBlocks,它們的圖形界面只不過是命令行方式的一個“外殼”。3113.1.4 函數(shù)庫的包含和連接應(yīng)用程序包含庫是指包含它的頭文件,使用#include預(yù)處理命令,例如:包含庫的頭文件后,程序就可以調(diào)用庫函數(shù)和使用它的數(shù)據(jù)類型、數(shù)據(jù)結(jié)構(gòu)、宏定義和特殊常量等。#include /GSL線性代數(shù)函數(shù)線性代數(shù)函數(shù)3213.1

15、.4 函數(shù)庫的包含和連接應(yīng)用程序連接庫是指在程序可執(zhí)行文件中嵌入庫的二進(jìn)制目標(biāo)代碼或?qū)霂欤╥mport library)。嵌入目標(biāo)代碼方式稱為靜態(tài)連接,它將庫的目標(biāo)代碼嵌入到程序可執(zhí)行文件中。其優(yōu)點(diǎn)是可執(zhí)行文件包含庫的實(shí)現(xiàn)代碼,不需要額外的運(yùn)行時文件就能夠運(yùn)行;缺點(diǎn)是可執(zhí)行文件體積增大,庫代碼不能被共享使用。導(dǎo)入庫方式稱為動態(tài)鏈接,它僅將庫調(diào)用信息存放在可執(zhí)行文件中,而庫代碼存放在動態(tài)鏈接庫DLL文件中。其優(yōu)點(diǎn)是可執(zhí)行文件體積小,一個DLL可以被多個應(yīng)用程序動態(tài)加載共享使用;缺點(diǎn)是程序運(yùn)行時必須有DLL文件(即在搜索路徑中能找到),否則就不能運(yùn)行。3313.1.4 函數(shù)庫的包含和連接在程序連

16、接階段,專業(yè)函數(shù)庫的庫文件(*.lib或*.a)必須添加到開發(fā)環(huán)境中。在VC中添加庫文件的方法是在“Workspace”程序項(xiàng)目的右鍵菜單中選擇“Settings.”菜單命令,或者單擊主菜單“Project/Settings.”,打開“Project Settings”對話框,如圖所示。在對話框中單擊“Link”標(biāo)簽,在“Object/library modules:”后面增加庫文件,例如libgsl.lib和libgslcblas.lib,使用空格分隔多個庫文件,單擊“OK”確定添加、刪除、修改庫文件操作。這樣的操作方式稱為VC程序項(xiàng)目添加庫。3413.1.4 函數(shù)庫的包含和連接圖13.4

17、Visual C+工程項(xiàng)目添加庫文件示意3513.1.4 函數(shù)庫的包含和連接VC還提供了另一種等效的添加方式,操作更簡單。在源程序文件中,編寫連接庫預(yù)處理命令,形式如下:其中庫文件名允許包含絕對路徑或相對路徑(相對于VC系統(tǒng)LIB路徑)。例如:這種方式稱為VC連接庫預(yù)處理。#pragma comment(lib,庫文件名庫文件名) /VC連接庫文件連接庫文件#pragma comment(lib,libgsl.lib) /VC連接連接GSL函數(shù)庫函數(shù)庫#pragma comment(lib,libgslcblas.lib) /VC連接連接GSL基礎(chǔ)線性代數(shù)庫基礎(chǔ)線性代數(shù)庫3613.1.4 函數(shù)

18、庫的包含和連接在CodeBlocks添加庫文件的方法是在“Workspace”(工作空間)右鍵單擊程序項(xiàng)目(project),在彈出菜單中選擇“Build options”(構(gòu)建選項(xiàng))菜單命令。如圖所示,在“Project build options”(項(xiàng)目build選項(xiàng))對話框中單擊“Linker settings”(連接器設(shè)置)標(biāo)簽,單擊“Add”(添加)增加庫文件,例如libgsl.a和libgslcblas.a,單擊“Edit”(編輯)修改、單擊“Delete”(刪除)刪除庫文件。請注意,CodeBlocks不支持VC的連接庫預(yù)處理命令。3713.1.4 函數(shù)庫的包含和連接圖13.5

19、CodeBlocks工程項(xiàng)目添加庫文件示意3813.1.5 函數(shù)庫配置舉例下面以使用GSL為例,介紹專業(yè)函數(shù)庫的配置。GNU科學(xué)計算函數(shù)庫GSL(GNU scientific library)是一個強(qiáng)大的C/C+數(shù)值計算函數(shù)庫,是開源自由軟件。GSL提供了大量的數(shù)值計算函數(shù),如線性代數(shù)、特殊函數(shù)等等。整個函數(shù)庫大約有1000多個函數(shù),涵蓋了科學(xué)計算的各個方面。如表13-2所列。3913.1.5 函數(shù)庫配置舉例表13-2 GSL函數(shù)庫目錄及對應(yīng)的頭文件函數(shù)庫名稱函數(shù)庫名稱頭文件頭文件函數(shù)庫名稱函數(shù)庫名稱頭文件頭文件異常錯誤捕獲異常錯誤捕獲gsl_errno.h數(shù)學(xué)函數(shù)數(shù)學(xué)函數(shù)gsl_math.h

20、復(fù)數(shù)復(fù)數(shù)gsl_complex_math.h多項(xiàng)式多項(xiàng)式gsl_poly.h特殊函數(shù)特殊函數(shù)gsl_sf.h或每個函數(shù)各或每個函數(shù)各自的頭文件自的頭文件向量和矩陣向量和矩陣gsl_block.hgsl_vector.hgsl_matrix.h排列排列g(shù)sl_permutation.h組合組合gsl_combination.h集合集合gsl_multiset.h排序排序gsl_sort.hgsl_sort_vector.hBLASgsl_blas.hCBLASgsl_cblas.h4013.1.5 函數(shù)庫配置舉例續(xù)表13-2 GSL函數(shù)庫目錄及對應(yīng)的頭文件函數(shù)庫名稱函數(shù)庫名稱頭文件頭文件函數(shù)庫名

21、稱函數(shù)庫名稱頭文件頭文件線性代數(shù)線性代數(shù)gsl_linalg.h特征值特征值gsl_eigen.hN元組元組gsl_ntuple.h數(shù)值積分?jǐn)?shù)值積分gsl_integration.h隨機(jī)數(shù)發(fā)生器隨機(jī)數(shù)發(fā)生器gsl_rng.h擬隨機(jī)序列擬隨機(jī)序列g(shù)sl_qrng.h隨機(jī)數(shù)的分布隨機(jī)數(shù)的分布gsl_randist.hgsl_cdf.h統(tǒng)計統(tǒng)計gsl_statistics_double.hgsl_statistics_int.h直方圖直方圖gsl_histogram.hgsl_histogram2d.h快速傅立葉變換快速傅立葉變換gsl_fft_complex.hgsl_fft_real.h常微分方

22、程常微分方程gsl_odeiv.h序列加速序列加速gsl_sum.h數(shù)值微分?jǐn)?shù)值微分gsl_deriv.hChebyshev近似近似gsl_chebyshev.h4113.1.5 函數(shù)庫配置舉例續(xù)表13-2 GSL函數(shù)庫目錄及對應(yīng)的頭文件函數(shù)庫名稱函數(shù)庫名稱頭文件頭文件函數(shù)庫名稱函數(shù)庫名稱頭文件頭文件插值插值gsl_interp.hgsl_spline.h小波轉(zhuǎn)換小波轉(zhuǎn)換gsl_wavelet.hgsl_wavelet2d.h離散離散Hankel變換變換gsl_dht.h一維求根一維求根gsl_roots.h一維最小化一維最小化gsl_min.h多維求根多維求根gsl_multiroots.h

23、多維最小化多維最小化gsl_multimin.h最小二乘擬合最小二乘擬合gsl_fit.h非線性最小二乘擬合非線性最小二乘擬合sl_multifit_nlin.h基礎(chǔ)樣條基礎(chǔ)樣條gsl_bspline.h蒙特卡洛積分蒙特卡洛積分gsl_monte_plain.hgsl_monte_miser.hgsl_monte_vegas物理常數(shù)物理常數(shù)gsl_const_mksa.hgsl_const_cgsm.hgsl_const_num.h模擬退火模擬退火gsl_siman.hIEEE浮點(diǎn)算法浮點(diǎn)算法gsl_ieee_utils.h4213.1.5 函數(shù)庫配置舉例在Windows操作系統(tǒng)上使用GSL,

24、首先需要從互聯(lián)網(wǎng)(/software/gsl/)上下載“GSL for Windows”版本,將下載文件解壓到臨時文件夾TEMP中;然后將TEMPBIN文件夾中的兩個動態(tài)鏈接庫libgsl.dll和libgslcblas.dll文件復(fù)制到Windows系統(tǒng)文件夾下,使用GSL的應(yīng)用程序運(yùn)行時需要這兩個文件。4313.1.5 函數(shù)庫配置舉例1在Code:Blocks環(huán)境下使用GSL由于GSL提供的是GCC形式的庫文件,而CodeBlocks環(huán)境默認(rèn)使用GCC編譯器,因此在CodeBlocks中可以直接使用GSL。使用前面的“復(fù)制文件法”,將TEMP下INCLUD

25、E和LIB文件夾分別復(fù)制到CodeBlocks的系統(tǒng)INCLUDE路徑和系統(tǒng)LIB路徑中,這兩個文件夾分別包含了GSL函數(shù)庫的頭文件和庫文件(以.a為擴(kuò)展名)。在程序源文件中包含相應(yīng)的GSL頭文件,在程序項(xiàng)目中添加連接庫libgsl.a和libgslcblas.a,應(yīng)用程序就能夠調(diào)用GSL函數(shù)。44【例13.1】 使用LU分解法求解如下線性方程組。13.1.5 函數(shù)庫配置舉例01230.18 0.60 0.57 0.961.00.41 0.24 0.99 0.582.00.14 0.30 0.97 0.663.00.51 0.13 0.19 0.854.0 xxxx 4513.1.5 函數(shù)庫配

26、置舉例例13.1 1 #include 2 #include /GSL線性代數(shù)函數(shù)線性代數(shù)函數(shù) 3 int main() 4 5 int s; 6 double A=0.18,0.60,0.57,0.96,0.41,0.24,0.99,0.58,0.14,0.30,0.97,0.66,0.51,0.13,0.19,0.85; 7 double B=1.0,2.0,3.0,4.0; 8 gsl_matrix_view m; 9 gsl_vector_view b; 10 gsl_vector *x; 11 gsl_permutation *p; 12 m=gsl_matrix_view_arra

27、y(A, 4, 4); /關(guān)聯(lián)矩陣視圖關(guān)聯(lián)矩陣視圖 13 b=gsl_vector_view_array(B, 4); /關(guān)聯(lián)向量視圖關(guān)聯(lián)向量視圖 14 x=gsl_vector_alloc(4); /建立求解向量空間建立求解向量空間4613.1.5 函數(shù)庫配置舉例例13.1 15 p=gsl_permutation_alloc(4); /分配臨時空間分配臨時空間 16 gsl_linalg_LU_decomp(&m.matrix, p, &s); /LU分解分解 17 gsl_linalg_LU_solve(&m.matrix,p,&b.vector,x); /方程求解方程求解 18 printf(x=n); 19 gsl_vector_fprintf(st

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論