Golang中優秀的訊息佇列NSQ基礎安裝及使用詳解
阿新 • • 發佈:2020-12-18
文章目錄
陣列簡介
陣列由資料型別相同的一系列元素組成
#include<stdio.h>
int main()
{
int arr1[10];//內含有10個int型別元素的陣列,[]內的值必須為常量或者常量表達式,而且不能為浮點數,負數,不能為零。
int arr2[(int)2.5];//將2.5自動轉化為整數
pirntf("%d\n", sizeof (arr2));
}
執行結果
8
要訪問陣列中的元素,通過使用陣列下標數(也稱為索引)表示陣列中的各元素,陣列元素的編號從0開始。
陣列初始化
#include<stdio.h>
int main()
{
int arr_1[3] = { 1, 2, 3 };
int arr_2[];//編譯器根據元素個數確定陣列長度
int arr_3[3] = { 1, 2 };//未被指定的值自動初始化為0
char arr_4[3] = { 'a', 98, 'c' };//根據Ascall碼進行轉化 98=='b'
c語言不允許將陣列作為一個單元賦值給另外一個數組。除了在初始化外,不允許使用花括號進行賦值.
指定陣列任意元素初始化值
#include<stdio.h>
int main()
{
int arr[6] = { arr[5] = 212 };
}
對已經初始化的值賦值
如果對已經初始化的元素賦值,新值將會覆蓋舊值。
#include <stdio.h>
int main(void)
{
int arr[] = { 1, arr[0] = 0 };
printf("%d\n",sizeof(arr));
printf("%d\n",arr[0]);
}
執行結果
8
0
利用const宣告不可變陣列
#incldue<stdio.h>
int main()
{
const int arr[1] = {1};
//將陣列設定為只讀狀態,不可以修改。
}
陣列首地址與陣列第一個首元素地址
- 陣列地址與陣列第一個元素首地址數值相同
- 陣列地址的長度由陣列內的元素本身型別和個數決定
- 陣列元素地址的長度由元素本身型別決定
#include<stdio.h>
int main()
{
int a[] = { 0, 1, 2 };
printf("%0x\n%0x\n%0x\n%0x\n", &a, &a[0], &a[1], &a[2]);
printf("%0x\n%0x\n", &a+1, &a[0]+1);
return 0;
}
執行結果
cffd3c
cffd3c
cffd40
cffd44
cffd48
cffd40
陣列分類
字元陣列
二維陣列
基本形式
#include<stdio.h>
int main()
{
int arr[2][3];//陣列arr是含義兩個陣列元素的陣列,每個陣列元素含有三個int型別的元素。
}
初始化二維陣列
初始化二維陣列建立在初始化一維陣列的基礎上。
#include<stdio.h>
int main()
{
int arr1[2][2] = {
{ 0, 1 },
{ 0, 1 }
};
//也可以省略花括號
int arr2[2][2] = {
0,1,0,1;
}//如果初始化值不夠,按照先後順序直到用完所有的值,剩下的值被賦值為0.
}
多維陣列
一維陣列像是一列資料,二維陣列像是資料表,三維陣列像是一疊資料表,等等…