C++初始化數(shù)組的幾種常見方法(簡單易懂)
在 C++ 中,初始化數(shù)組有幾種方式,具體取決于數(shù)組的類型、大小以及是否給定初始值。
下面是提供幾種常見的數(shù)組初始化方法:
1、初始化一維數(shù)組
1.1、使用列表初始化(推薦方式)
#include <iostream> int main() { // 初始化數(shù)組,指定元素 int arr[5] = {1, 2, 3, 4, 5}; // 輸出數(shù)組內(nèi)容 for (int i = 0; i < 5; i++) { std::cout << arr[i] << " "; } return 0; }
1.2、初始化部分列表
#include <iostream> int main() { // 只初始化前兩個(gè)元素,其余元素默認(rèn)為 0 int arr[5] = {1, 2}; // 輸出數(shù)組內(nèi)容 for (int i = 0; i < 5; i++) { std::cout << arr[i] << " "; } return 0; }
1.3、使用std::fill初始化列表
#include <iostream> #include <algorithm> // 包含 fill 函數(shù) int main() { int arr[5]; // 使用 fill 初始化數(shù)組,填充每個(gè)元素為 7 std::fill(std::begin(arr), std::end(arr), 7); // 輸出數(shù)組內(nèi)容 for (int i = 0; i < 5; i++) { std::cout << arr[i] << " "; } return 0; } // std::fill{7, 7, 7, 7, 7}
1.4、使用循環(huán)初始化列表
#include <iostream> int main() { int arr[5]; // 使用循環(huán)初始化數(shù)組 for (int i = 0; i < 5; i++) { arr[i] = i * 2; // 填充為偶數(shù) } // 輸出數(shù)組內(nèi)容 for (int i = 0; i < 5; i++) { std::cout << arr[i] << " "; } return 0; }
2、初始化二維數(shù)組
2.1、使用列表初始化數(shù)組
#include <iostream> int main() { // 初始化二維數(shù)組 int arr[3][2] = {{1, 2}, {3, 4}, {5, 6}}; // 輸出二維數(shù)組內(nèi)容 for (int i = 0; i < 3; i++) { for (int j = 0; j < 2; j++) { std::cout << arr[i][j] << " "; } std::cout << std::endl; } return 0; }
2.2、 初始化部分二維數(shù)組
#include <iostream> int main() { // 只初始化部分元素,其他元素將被填充為 0 int arr[3][3] = {{1, 2}, {3, 4}}; // 輸出二維數(shù)組內(nèi)容 for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { std::cout << arr[i][j] << " "; } std::cout << std::endl; } return 0; }
2.3、循環(huán)初始化二維數(shù)組
#include <iostream> int main() { int arr[3][3]; // 使用循環(huán)初始化二維數(shù)組 for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { arr[i][j] = i * 3 + j; // 使用索引填充 } } // 輸出二維數(shù)組內(nèi)容 for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { std::cout << arr[i][j] << " "; } std::cout << std::endl; } return 0; }
3、用new動態(tài)初始化數(shù)組
#include <iostream> int main() { int* arr = new int[5]; // 動態(tài)分配大小為 5 的數(shù)組 // 初始化數(shù)組 for (int i = 0; i < 5; i++) { arr[i] = i * 2; // 填充偶數(shù) } // 輸出動態(tài)數(shù)組內(nèi)容 for (int i = 0; i < 5; i++) { std::cout << arr[i] << " "; } delete[] arr; // 釋放動態(tài)分配的數(shù)組內(nèi)存 return 0; }
4、 C++11 中的初始化方式
在 C++11 及以上版本中提供了更靈活的數(shù)組類型。
4.1、使用std::array靜態(tài)初始化數(shù)組
#include <iostream> #include <array> int main() { std::array<int, 5> arr = {1, 2, 3, 4, 5}; // 使用 std::array 初始化 // 輸出 std::array 內(nèi)容 for (int i = 0; i < 5; i++) { std::cout << arr[i] << " "; } return 0; }
4.2、使用 std::vector動態(tài)初始化數(shù)組
#include <iostream> #include <vector> int main() { std::vector<int> vec = {1, 2, 3, 4, 5}; // 使用 std::vector 初始化 // 輸出 std::vector 內(nèi)容 for (size_t i = 0; i < vec.size(); i++) { std::cout << vec[i] << " "; } return 0; }
以上就是C++初始化數(shù)組的幾種常見方法(簡單易懂)的詳細(xì)內(nèi)容,更多關(guān)于C++初始化數(shù)組的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Linux網(wǎng)絡(luò)編程之socket文件傳輸示例
這篇文章主要介紹了Linux網(wǎng)絡(luò)編程之socket文件傳輸示例,對于基于Linux平臺的C程序員來說有一定的借鑒價(jià)值,需要的朋友可以參考下2014-08-08怎么用C++提取任意一張圖片的特征(從內(nèi)存讀取數(shù)據(jù))
這篇文章主要介紹了用C++提取任意一張圖片的特征(從內(nèi)存讀取數(shù)據(jù))的相關(guān)資料,需要的朋友可以參考下2017-05-05C++11 lambda表達(dá)式在回調(diào)函數(shù)中的使用方式
這篇文章主要介紹了C++11 lambda表達(dá)式在回調(diào)函數(shù)中的使用方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11C/C++讀取大文件數(shù)據(jù)方式詳細(xì)講解
這篇文章主要介紹了C語言/C++讀取大文件數(shù)據(jù)的完整方式過程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-09-09C++數(shù)據(jù)結(jié)構(gòu)與算法之雙緩存隊(duì)列實(shí)現(xiàn)方法詳解
這篇文章主要介紹了C++數(shù)據(jù)結(jié)構(gòu)與算法之雙緩存隊(duì)列實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了雙緩存隊(duì)列的原理、實(shí)現(xiàn)方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-08-08