c 陣列的基礎知識

2021-07-22 03:45:23 字數 1443 閱讀 6914

int a[5];                //定義陣列是基本形式

int a=; //可以在定義時,直接初始化

int a[5]= //定義時初始化陣列,如果指定了陣列大小,那麼提供初始化的元素的個數只可以比陣列指定的個數少,本可以多,沒有初始化的位置,會預設初始化,

對於字元陣列,我們要記住一定要留乙個位置存放結束符『\0』,而且陣列是不允許拷貝賦值的。陣列的元素應為物件,因此不存在引用的陣列

陣列的指標或陣列的引用

存放指標的陣列,沒有存放引用的陣列

#include

using

namespace

std;

int main()

; int(*num_pointer)[5] = # // 陣列的指標

/* num_pointer ⇒ &num 表示乙個陣列的首位址, 步長為乙個整個陣列大小

*num_pointer => num 表示陣列第乙個元素位址, 步長為乙個陣列元素的大小。

**/cout

<< "num的值:"

<< num<< "&num的值:"

<<&num << endl;

cout

<< num_pointer << " "

<< *num_pointer << endl;

cout

<< **num_pointer << " "

<< *((*num_pointer) + 1) << endl;

int (&num_quote)[5] = num; //陣列的引用

cout

<< num_quote[0] << endl;

char* str[2] = ; // 存放指標的陣列

cout

<< str[0] << endl;

system("pause");

return

0;}

使用陣列的時候,編譯器一般會把它轉換成為指標。在一些情況下對陣列的操作,其實就是對指標的操作。

int num[5] = ;

auto num1 = num; //num存放的是陣列的第乙個元素的位址,所以num1的型別是乙個指標

cout

<< "num1的型別是:"

<< typeid(num1).name() << endl;

begin函式獲取陣列的首位址

內建的下標運算子所用的索引值是有符號數, 這一點和vector 和 string 不一樣。下標和指標關係如下:

a[i] == > *(a + i)

C 的陣列基礎知識

方式一 int scores 在陣列宣告的時候賦值方式二 定義陣列的長度,沒有賦值,元素預設值為0 int scores newint 10 陣列長度為10,陣列元素預設值是0 也可以這樣寫 int scores 陣列的初始化 scores newint 10 方式三 定義陣列的長度,有賦值 int...

C 基礎知識篇 C 陣列

c 支援陣列資料結構,它可以儲存乙個固定大小的相同型別元素的順序集合。陣列是用來儲存一系列資料,但它往往被認為是一系列相同型別的變數。陣列的宣告並不是宣告乙個個單獨的變數,比如 number0 number1 number99,而是宣告乙個陣列變數,比如 numbers,然後使用 numbers 0...

陣列 基礎知識

陣列是相同型別的變數的有序集合 int a 5 陣列示意圖 陣列包含5個int型別的資料 陣列在一片連續的記憶體空間中儲存元素。陣列元素的個數可以顯式或隱式指定。對於a,a 2 a 3 a 4 都為0 對於b,元素個數為2。在定義陣列並初始化的時候,給陣列的前幾位初始化設定相應的值之後,如果沒有給後...