LabVIEW工程實踐自編講義第六講_第1頁
LabVIEW工程實踐自編講義第六講_第2頁
LabVIEW工程實踐自編講義第六講_第3頁
LabVIEW工程實踐自編講義第六講_第4頁
LabVIEW工程實踐自編講義第六講_第5頁
已閱讀5頁,還剩55頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第六講 數(shù)組與簇 6.1 6.1 數(shù)組數(shù)組 數(shù)組是數(shù)組是LabVIEWLabVIEW常用的數(shù)據類型之一。一個數(shù)組可以是一常用的數(shù)據類型之一。一個數(shù)組可以是一維或者多維,如果必要,每維最多可有維或者多維,如果必要,每維最多可有2 231311 1個元素??梢酝▊€元素??梢酝ㄟ^數(shù)組索引訪問其中的每個元素。索引的范圍是過數(shù)組索引訪問其中的每個元素。索引的范圍是0 0到到n-1n-1。數(shù)組。數(shù)組的元素可以是數(shù)據、字符串等,但所有元素的數(shù)據類型必須一的元素可以是數(shù)據、字符串等,但所有元素的數(shù)據類型必須一致。致。 6.1.1 6.1.1 數(shù)組的組成與創(chuàng)建數(shù)組的組成與創(chuàng)建 1.1.數(shù)組的組成數(shù)組的組成 由索

2、引、數(shù)據和數(shù)據由索引、數(shù)據和數(shù)據 類型構成。其中數(shù)據類型構成。其中數(shù)據 類型隱含在數(shù)據中。類型隱含在數(shù)據中。第六講第六講 數(shù)組、簇數(shù)組、簇 第六講 數(shù)組與簇 2. 2. 數(shù)組的創(chuàng)建數(shù)組的創(chuàng)建從前面板上創(chuàng)建數(shù)組:從前面板上創(chuàng)建數(shù)組:打開前面板,在控件打開前面板,在控件新式新式數(shù)數(shù)組,矩陣與簇組,矩陣與簇數(shù)組,如圖。數(shù)組,如圖。 第六講 數(shù)組與簇 再在里面放置一個數(shù)值輸入控件即可,如圖:第六講 數(shù)組與簇 如果要顯示更多的數(shù)組成員數(shù)組成員,在工具選項板上選擇定位工具,在數(shù)組的邊框停滯,當出現(xiàn)網狀拐角后就可以拖動增加或減少顯示區(qū)域。如圖:如果要增加或減少數(shù)組的維維數(shù)數(shù),可以在索引框的快捷菜單上執(zhí)行,如

3、圖:第六講 數(shù)組與簇 增加后如圖:對于二維數(shù)組來說,索引框中上一個為行索引,下一個為列索引。第六講 數(shù)組與簇 2程序框圖上創(chuàng)建數(shù)組:程序框圖上創(chuàng)建數(shù)組:在程序框圖上創(chuàng)建數(shù)組和在前面板上創(chuàng)建數(shù)組有點類似,也首先創(chuàng)建一個外殼,然后再放入數(shù)值型常量,枚舉或環(huán)形常量,字符串型常量以及布爾型常量等。剛剛放入常量后,所有的數(shù)組成員顯示為灰色,可以用操作工具依次給它們賦值,賦值范圍以外的數(shù)組成員保持灰色不變。如果跳過一些數(shù)組成員給后面的成員賦值,則前面的成員自動賦一個系統(tǒng)默認的值。 先在程序框圖上放置一個數(shù)組常量,位于函數(shù)編程數(shù)組數(shù)組常量,如圖:第六講 數(shù)組與簇 然后再往里放入一個數(shù)值常量,完成后如圖:第六

4、講 數(shù)組與簇 6.1.26.1.2數(shù)組函數(shù)數(shù)組函數(shù) 對一個數(shù)組進行操作,無非是求數(shù)組的長度、取出數(shù)組對一個數(shù)組進行操作,無非是求數(shù)組的長度、取出數(shù)組中的元素、替換數(shù)組中的元素或初始化數(shù)組等各種運算。中的元素、替換數(shù)組中的元素或初始化數(shù)組等各種運算。第六講 數(shù)組與簇 1.1.數(shù)組大小數(shù)組大小Array SizeArray Size函數(shù)函數(shù) 返回輸入數(shù)組中的元素個數(shù)。返回輸入數(shù)組中的元素個數(shù)。第六講 數(shù)組與簇 2.2.索引數(shù)組索引數(shù)組 Index Array Index Array函數(shù)函數(shù) 用于訪問數(shù)組中的某個元素。用于訪問數(shù)組中的某個元素。下圖顯示了一個索引函數(shù)的例子,它用于訪問下圖顯示了一個索

5、引函數(shù)的例子,它用于訪問數(shù)組中的第三個元素。數(shù)組中的第三個元素。第六講 數(shù)組與簇 將一個二維數(shù)組與將一個二維數(shù)組與Index ArrayIndex Array函數(shù)相連,函數(shù)相連,Index Index ArrayArray就會含就會含2 2個索引端子。將一個三維數(shù)組與個索引端子。將一個三維數(shù)組與Index Index ArrayArray函數(shù)相連,函數(shù)相連,Index ArrayIndex Array就會含就會含3 3個索引端子。余類個索引端子。余類推。推。 可以使用的索引端的符號是一個黑方快,被禁止使可以使用的索引端的符號是一個黑方快,被禁止使用的索引端(用的索引端(Disable Inde

6、xingDisable Indexing)是一個空心的小方框。)是一個空心的小方框。 第六講 數(shù)組與簇 可以從一個三維數(shù)組中提取一個二維數(shù)組,方法是可以從一個三維數(shù)組中提取一個二維數(shù)組,方法是禁止兩個索引端子,或者通過禁止一個索引端子提取一禁止兩個索引端子,或者通過禁止一個索引端子提取一個一維數(shù)組。下圖顯示了從三維數(shù)組提取數(shù)組的各種方個一維數(shù)組。下圖顯示了從三維數(shù)組提取數(shù)組的各種方法。法。第六講 數(shù)組與簇 3.3.數(shù)組子集數(shù)組子集Array SubsetArray Subset函數(shù)函數(shù) 選取數(shù)組或者矩陣的某個部分。選取數(shù)組或者矩陣的某個部分。第六講 數(shù)組與簇 該函數(shù)可以返回從某個指針開始的部分

7、數(shù)組,并包該函數(shù)可以返回從某個指針開始的部分數(shù)組,并包括了長度元素。下圖顯示了一些數(shù)組子集的例子,注意,括了長度元素。下圖顯示了一些數(shù)組子集的例子,注意,數(shù)組索引從數(shù)組索引從0 0開始。開始。第六講 數(shù)組與簇 4.4.替換數(shù)組元素替換數(shù)組元素Replace Array ElementReplace Array Element函數(shù)函數(shù) 替換數(shù)組中的某個元素。替換數(shù)組中的某個元素。第六講 數(shù)組與簇 5.5.改變數(shù)組維數(shù)改變數(shù)組維數(shù)Reshape ArrayReshape Array函數(shù)函數(shù) 改變輸入數(shù)組的維數(shù)。改變輸入數(shù)組的維數(shù)。第六講 數(shù)組與簇 6.6.初始化數(shù)組初始化數(shù)組Initialize

8、ArrayInitialize Array函數(shù)函數(shù) 對數(shù)組進行初始化,數(shù)組中所有的元素相同。對數(shù)組進行初始化,數(shù)組中所有的元素相同。第六講 數(shù)組與簇 7.7.建立數(shù)組建立數(shù)組Build ArrayBuild Array函數(shù)函數(shù) 建立一個新數(shù)組的維數(shù)。建立一個新數(shù)組的維數(shù)。第六講 數(shù)組與簇 8.8.移位一維數(shù)組移位一維數(shù)組Rotate 1D ArrayRotate 1D Array函數(shù)函數(shù) 將一維數(shù)組的最后將一維數(shù)組的最后n n各元素移至數(shù)組前面。各元素移至數(shù)組前面。第六講 數(shù)組與簇 9.9.排序一維數(shù)組排序一維數(shù)組Sort 1D ArraySort 1D Array函數(shù)函數(shù) 將一維數(shù)組中的數(shù)據

9、按升序排列。將一維數(shù)組中的數(shù)據按升序排列。第六講 數(shù)組與簇 10.10.顛倒一維數(shù)組顛倒一維數(shù)組Reverse 1D ArrayReverse 1D Array函數(shù)函數(shù) 將一維數(shù)組的元素前后顛倒。結合將一維數(shù)組的元素前后顛倒。結合Sort 1D ArraySort 1D Array函函數(shù),可實現(xiàn)降序排列。數(shù),可實現(xiàn)降序排列。第六講 數(shù)組與簇 11.11.轉置二維數(shù)組轉置二維數(shù)組Transpose 2D ArrayTranspose 2D Array函數(shù)函數(shù) 將二維數(shù)組進行轉置輸出。將二維數(shù)組進行轉置輸出。第六講 數(shù)組與簇 12.12.搜索一維數(shù)組搜索一維數(shù)組Search 1D ArraySea

10、rch 1D Array函數(shù)函數(shù) 搜索指定元素在一維數(shù)組中的位置。搜索指定元素在一維數(shù)組中的位置。第六講 數(shù)組與簇 13.13.求數(shù)組的最大值和最小值求數(shù)組的最大值和最小值Array Max & MinArray Max & Min函數(shù)函數(shù) 返回數(shù)組中的最大值和最小值,以及它們在數(shù)組中返回數(shù)組中的最大值和最小值,以及它們在數(shù)組中的位置。的位置。第六講 數(shù)組與簇 14.14.截斷一維數(shù)組截斷一維數(shù)組Split 1D ArraySplit 1D Array函數(shù)函數(shù) 將一維數(shù)組在指定位置截斷,分成兩個一維數(shù)組。將一維數(shù)組在指定位置截斷,分成兩個一維數(shù)組。當索引位置小于當索引位置小于0

11、 0時,第一個子數(shù)組為空;當索引位置時,第一個子數(shù)組為空;當索引位置大于數(shù)組長度時,第二個子數(shù)組為空;大于數(shù)組長度時,第二個子數(shù)組為空;第六講 數(shù)組與簇 15.15.一維數(shù)組的插值一維數(shù)組的插值Interpolate 1D ArrayInterpolate 1D Array函數(shù)函數(shù) 根據給定的小數(shù)索引值,確定對應的數(shù)組元素值。根據給定的小數(shù)索引值,確定對應的數(shù)組元素值。第六講 數(shù)組與簇 16.16.一維數(shù)組的閾值一維數(shù)組的閾值Threshold 1D ArrayThreshold 1D Array函數(shù)函數(shù) 是線性插值的逆過程,根據給定的數(shù)值,確定對應是線性插值的逆過程,根據給定的數(shù)值,確定對應

12、的索引值。的索引值。第六講 數(shù)組與簇 17.17.插入一維數(shù)組插入一維數(shù)組Interleave 1D ArrayInterleave 1D Array函數(shù)函數(shù) 將輸入端口的一維數(shù)組插入到輸出的一維數(shù)組中。將輸入端口的一維數(shù)組插入到輸出的一維數(shù)組中。插入的順序為:按從上到下的原則,依次取出輸入數(shù)組插入的順序為:按從上到下的原則,依次取出輸入數(shù)組的第的第0 0各元素,放入輸出數(shù)組中;然后是第各元素,放入輸出數(shù)組中;然后是第1 1 各元素,各元素,依此類推。依此類推。第六講 數(shù)組與簇 18.18.拆分一維數(shù)組拆分一維數(shù)組Decimate 1D ArrayDecimate 1D Array函數(shù)函數(shù) 是

13、插入一維數(shù)組是插入一維數(shù)組Interleave 1D ArrayInterleave 1D Array函數(shù)的反運算。函數(shù)的反運算。將輸入的一維數(shù)組拆分為多個一維數(shù)組。拆分原則:第將輸入的一維數(shù)組拆分為多個一維數(shù)組。拆分原則:第1 1個子數(shù)組:元素為輸入數(shù)組的個子數(shù)組:元素為輸入數(shù)組的0,n,2n,3n, 0,n,2n,3n, 第第2 2個子數(shù)組:元素為輸入數(shù)組的個子數(shù)組:元素為輸入數(shù)組的0,n+1,2n+1,3n+1, 0,n+1,2n+1,3n+1, 第第3 3個子數(shù)組:依此類推。個子數(shù)組:依此類推。第六講 數(shù)組與簇 第六講 數(shù)組與簇 例一:例一:設計步驟如下:創(chuàng)建一個For循環(huán),循環(huán)次數(shù)定

14、為100次在數(shù)學函數(shù)中調用Sinc函數(shù),重復端子作為輸入,輸出用一個波形圖表和一個數(shù)組顯示。如圖:第六講 數(shù)組與簇 例二:創(chuàng)建一個二維數(shù)組例二:創(chuàng)建一個二維數(shù)組第六講 數(shù)組與簇 現(xiàn)在已經有兩組一維數(shù)組了,可以使用創(chuàng)建數(shù)組函數(shù)就可以把他們創(chuàng)建為二維數(shù)組,在一個波形圖中顯示,如圖:第六講 數(shù)組與簇 可以用鼠標對該函數(shù)進行拉伸操作,即可有兩個輸入端子了。程序框圖如圖:第六講 數(shù)組與簇 前面板運行結果如圖:第六講 數(shù)組與簇 例三:例三:初始化和分離數(shù)組:利用For循環(huán)的自動索引功能從一個輸入數(shù)組中依次抽取各個元素,如果是大于0的數(shù)則添加到正數(shù)數(shù)組,如果是小于0的則添加到負數(shù)數(shù)組。并分別計算兩個數(shù)組中各

15、自有多少個元素。如圖所示便是程序框圖第六講 數(shù)組與簇 下圖是在選擇結構中為“假”時的情景第六講 數(shù)組與簇 其中一共用到了三個數(shù)組函數(shù),一個初始化函數(shù),一個創(chuàng)建函數(shù),一個數(shù)組大小函數(shù),運行時前面板如圖:第六講 數(shù)組與簇 6.1.3 6.1.3 數(shù)組的特點數(shù)組的特點 1.LabVIEW1.LabVIEW會自動確定會自動確定數(shù)組長度,最多可達數(shù)組長度,最多可達(2 231311 1)個元素。)個元素。 。 2.2.數(shù)組中元素的數(shù)據類型必須相同。數(shù)組中元素的數(shù)據類型必須相同。第六講 數(shù)組與簇 6.2 6.2 簇簇 簇是簇是LabVIEWLabVIEW中一個比較特別的數(shù)據類型,它可以將幾種不同中一個比較

16、特別的數(shù)據類型,它可以將幾種不同的數(shù)據類型集中到一個單元中形成一個整體。的數(shù)據類型集中到一個單元中形成一個整體。 如有關一個學生的信息有:學號、姓名、性別、年齡、成績和如有關一個學生的信息有:學號、姓名、性別、年齡、成績和家庭地址等。如將這些項目分別定義為相互獨立的簡單變量,不家庭地址等。如將這些項目分別定義為相互獨立的簡單變量,不能反映它們之間的內在聯(lián)系。而應當把它們組合成一個組合項,能反映它們之間的內在聯(lián)系。而應當把它們組合成一個組合項,這種數(shù)據結構就是簇。這種數(shù)據結構就是簇。 上述數(shù)據的上述數(shù)據的C C語言結構描述:語言結構描述: 上述數(shù)據的上述數(shù)據的LabVIEWLabVIEW結構描述

17、:結構描述: struct studentstruct student int num; int num; char name20; char name20; char sex; char sex; int age; int age; float score; float score; char addr30; char addr30; 第六講 數(shù)組與簇 簇是一種類似數(shù)組的數(shù)據結構,用于分組數(shù)據。簇和數(shù)組有著重要的差別,其中一個重要差別是,簇可以包含不同的數(shù)據類型,而數(shù)組僅可以包含相同的數(shù)據類型。例如,一個數(shù)組可以包含10個數(shù)字指示器,一個簇卻可以包含一個數(shù)字控件,一個開關和一個字符串控件。

18、盡管簇和數(shù)組的元素都是有序存放的,但訪問簇的元素最好是通過釋放的方法同時訪問其中部分或全部元素,而不是通過索引一次訪問一個元素。簇和數(shù)組的另一個差別是簇具有固定的大小。 簇通常用于將出現(xiàn)在框圖上的有關數(shù)據元素分組管理。因為簇在框圖中僅用唯一的連線表示,所以對于減少連線混亂和子VI需要的連接器端子個數(shù),使用簇有著積極的效果??梢詫⒋乜醋鍪且焕B線,線纜中每一個連線表示簇的不同元素。在框圖上,只有當簇具有相同類型,相同元素數(shù)量和相同元素順序時,才可以將簇的子端連接。 第六講 數(shù)組與簇 6.2.1 6.2.1 簇的簇的創(chuàng)建創(chuàng)建 簇的創(chuàng)建框位于前面板中的控件簇的創(chuàng)建框位于前面板中的控件新式新式數(shù)組數(shù)組

19、, ,矩陣和簇矩陣和簇簇。簇。第六講 數(shù)組與簇 然后就可以往簇的框中添加各種類型的控件了,例如現(xiàn)在要建立一個學生的記錄信息,包括學生的姓名,學號,性別和年齡.這就需要在簇外殼里依次放入兩個字符串輸入控件,一個數(shù)字控件和一個布爾控件.如圖:第六講 數(shù)組與簇 與數(shù)組的創(chuàng)建類似,簇也可以從程序框圖中創(chuàng)建,先在程序框圖上放置一個簇外殼,然后就可以在簇外殼里放置各種數(shù)據類型常數(shù)。如圖:簇內對象的大小是可以調整的,右擊簇邊界,在彈出的快捷菜單中可以選擇各種調節(jié)操作,如圖: 第六講 數(shù)組與簇 選擇調整為匹配大小,即可縮小簇的邊框,如圖為調整后的結果: 簇結構中的元素排列是按照它們放置的先后來排序的,它與簇內

20、元素的位置無關。放入簇內的第一個元素序號為0,第二個元素序號是1,依次向下排列。如果刪除了一個元素,序號將重新自動調整。簇的排序很重要,它直接影響著后面將要介紹的“捆綁”以及“接觸捆綁”函數(shù)的端口順序,如果要將一個簇與另一個簇連接,這兩個簇的序和類型必須相同。 第六講 數(shù)組與簇 如果想要改變簇內元素的排列順序,可以右擊簇結構的邊框,在彈出的快捷菜單中執(zhí)行“重新排序簇中控件”,如圖:第六講 數(shù)組與簇 這時鼠標會變成一個帶“”號的手柄箭頭,黑框指出新設置的排列序號,白框表示原先的排列序號,可以改變標題欄上的“單擊設置”內容,然后單擊簇元素即可設置新的序號。設置完畢后單擊工具欄上的“ ”按鈕確定更改

21、,如果想恢復原先設定值,單擊“ ”取消設置。 6.2.2 簇函數(shù)簇函數(shù) 簇函數(shù),主要是訪問簇中的各個元素,或由不同類型簇函數(shù),主要是訪問簇中的各個元素,或由不同類型但相互關聯(lián)的數(shù)據組成簇。但相互關聯(lián)的數(shù)據組成簇。簇函數(shù)的模版如圖:第六講 數(shù)組與簇 簇函數(shù)中最主要的就是構造打包生成簇的“捆綁”函數(shù),還有從簇中解包提取簇中元素的“解除捆綁”函數(shù)。它們是根據簇成員的順序來進行操作的,這也說明了簇內成員順序排列的重要性。例1. 創(chuàng)建簇,解包簇,再打包簇該例的目的是學習使用簇的兩個基本函數(shù),如圖:首先放置一個簇外殼到前面板上,將標簽內容改為“輸入簇”簇函數(shù)舉例:簇函數(shù)舉例:第六講 數(shù)組與簇 在簇外殼中依

22、次放入字符串控件“Name”,布爾控件“Sex”,數(shù)字輸入控件“Pay”以及字符串控件“Address”,通過這些簇元素來組成某一公司內一名員工的工資記錄。如圖:切換到程序框圖,放置一個“解除捆綁”解包簇函數(shù),函數(shù)剛放入時,它的右側只有2個輸出端口,當輸入端口與“輸入簇”端子相連后,右側端口會自動增加為簇元素的數(shù)目,端口從上向下排列的順序與簇內元素的放置順序相對應,并且數(shù)據類型也是與簇元素數(shù)據類型相對應。如圖:第六講 數(shù)組與簇 同樣放置一個“捆綁”打包簇函數(shù),用定位工具將輸入端口的數(shù)目增加到4個,依次將它們與解包出來的4個簇元素相連,表示又把它們進行打包生成一個新的簇。在輸出端口創(chuàng)建一個簇顯示

23、器,把標簽改為“輸出簇”,如圖: 第六講 數(shù)組與簇 例例2. 替換簇成員替換簇成員該例的目的是學習使用“按名稱捆綁” 函數(shù)來替換簇內的某些元素。 1新建一個VI,在前面板上創(chuàng)建一個簇外殼,依次向簇內添加一個數(shù)字輸入控件,一個布爾控件,一個字符串輸入控件,如圖: 第六講 數(shù)組與簇 2打開程序框圖,選擇“按名稱捆綁”函數(shù),它的功能是按照名稱來替換簇成員的值。在函數(shù)剛放入時,它的左側只有一個輸入端口,將函數(shù)的“輸入簇”端口與創(chuàng)建的簇端子相連之后,左側端口會顯示簇內第一個元素的名稱數(shù)值,用操作工具單擊它可以選擇其他的簇成員。如圖:第六講 數(shù)組與簇 3在前面板上創(chuàng)建一個輸入控件,將標簽改為“輸入數(shù)字”,

24、在程序框圖將它與“數(shù)值”端口相連,表示將用它來替換簇元素。如圖:第六講 數(shù)組與簇 4在“按名稱捆綁”函數(shù)后面創(chuàng)建輸出簇,完成后即可運行程序,如圖: 第六講 數(shù)組與簇 例例3. 插接生成簇數(shù)組插接生成簇數(shù)組該例的目的是學習使用“索引與捆綁簇數(shù)組” 函數(shù)插接簇數(shù)組函數(shù)來生成一個簇數(shù)組。 1新建一個VI,打開程序框圖,放置一個該函數(shù),剛放入時它只有一個輸入的端口,用定位工具拖拉它為3個輸入端口。2在程序框圖上放置三個數(shù)組外殼,然后分別添加字符串常量,數(shù)值常量和布爾常量,建立三個數(shù)組,如圖:然后給他們賦如圖所示的值,如圖:第六講 數(shù)組與簇 然后連線,并創(chuàng)建顯示控件,如圖:運行,結果如圖:說明:該函數(shù)從輸入的3個數(shù)組中依次取值,相同索引值的數(shù)據被攢成一個簇,所有的簇構成一個一維數(shù)組。插接成的數(shù)組的長度與所有輸入數(shù)組中長度最短的一個相等,多余的數(shù)據被丟棄。第六講 數(shù)組與簇 4. 建立建立“數(shù)組的數(shù)組數(shù)組的數(shù)組”學習把一維數(shù)組當成一個簇,然后通過建立簇的數(shù)組,因為簇數(shù)組的每一個成員都是一個簇(即一維數(shù)組),從而實現(xiàn)建立“數(shù)組的數(shù)組”的目的。1先新建一個VI,打開程序框圖,放置一個“創(chuàng)建簇數(shù)組” 函數(shù),該函數(shù)的功能是建立簇的數(shù)組,簇數(shù)組的每個成員都是一個簇。剛放入程序框圖時,函數(shù)只有一個輸入端口,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論