蒼老師班裡面有5個學生,經過了一次考試,需要儲存這5個學生的成績需要5個變數
100個學生
又經歷一次考試,每個學生的成績都要儲存起來要儲存100個資料,就需要用100個變數,非常的不方便
所以我們就在想有沒有一種變數,可以儲存100個不同的資料
有!陣列!
陣列就可以用1個變數儲存多個不同的資料
陣列的語法:
型別 陣列名[正整數];
正整數就是你這個變數要儲存多少個資料
例:int nums[10]; //儲存10個int資料
char chs[5]; //儲存5個字元資料
如果訪問陣列中的每個資料
取值:
陣列名[編號];
例:nums[0]; //取第乙個元素 也可以稱之為 取下標為0的元素
賦值:
nums[0] = 30; //給第乙個元素賦值 給下標為0的元素賦值
元素:就是小空間裡面實際存放的資料
下標/索引:就是小空間的編號
長度:陣列實際能儲存的資料的個數
注意點:
陣列的下標最大值 = 長度 - 1;
陣列的定義:
語法:型別 陣列名[長度];
陣列的賦值:
首先要注意,陣列沒法像基本型別資料一樣可以直接變數名 = 值
1.先宣告,後賦值
型別 陣列名[長度];
陣列名[下標] = 資料;
2.在宣告的時候初始化
1) 型別 陣列名[長度] = ;
例: int nums[3] = ;
2) 型別 陣列名 = ;
意思就是,不給長度的時候,編譯器會自動根據你右邊的資料個數來判斷你的長度
例: int nums = ; //長度是?長度是3
3)型別 陣列名[長度] = ; 簡而言之就是給的資料小於長度
例: int nums[5] = ; //長度是?長度就是5,只不過你給下標0,下標1賦值了,其他沒有賦值
4)型別 陣列名[長度] = ;
例: int nums[5] = ;
遍歷陣列:
就是用迴圈依次訪問陣列中的每乙個元素
陣列的越界:
就是訪問了不屬於自己空間的元素
執行時會報錯,也可能是未知的異常!
最大的可訪問的下標 = 長度 - 1
計算陣列的長度:
sizeof(陣列名)
得到這個陣列占用記憶體的總長度
公式:sizeof(陣列名) / sizeof(陣列型別);
OSG RenderBin詳細介紹以及使用方法
介紹 renderbin是osg stateset的乙個屬性,用於設定渲染順序。屬性 renderbin自身屬性主要包括 enum sortmode 使用場景及用法 場景 1.例如 我們的天空球肯定是要顯示在模型的後方,並且會被任何模型所遮擋。所以天空就要在模型繪製之前繪製。2.例如我們的標籤框總是...
mysql的索引詳細介紹及其使用
首先介紹幾個關於mysql的基礎知識,後面介紹索引時會使用到的基礎知識 1.mysql的儲存引擎 分為兩種,innodb和myisam 區別 主要的區別是innodb適合頻繁寫資料庫操作,myisam適合讀取資料庫的情況多一點。在表的過程中出現了一點小插曲,出現了中文亂碼問題 解決方法就順便帶上了 ...
mysql記憶體使用以及優化中需要的幾點注意
1 從記憶體中讀取資料是微秒級別的。而從磁碟讀則是毫秒級別的。二者相差乙個數量級。所以想優化資料庫,第乙個要做到的就是優化io。2 key buffer size global 設定的記憶體區域大小快取了myisam表的索引。由於myisam只快取索引在記憶體中,並不快取資料在記憶體,所以如果記憶體...