『壹』 c語言數組初始化問題
memset(a, 0, sizeof(a))這是庫函數,構成了C語句,要在執行時操作,所以要佔用執行時間。而a[10000]={0}是編譯器完成的,就是說代碼編譯完成後那10000個元素就成為0了,執行的時候裡面的0已經是現成的。但前者可以把10000個元素預置成任何一個合法的值,而後者要初始化成1的就得寫10000個1,那誰也不想干。只有初始化為0時可以a[10000]={0} 這樣寫,如果寫成a[10000]={1}想達到初始化為全1是徒勞的,除了a[0]=1外,其餘的還是0……
『貳』 C語言 三維數組初始化
方法和詳細的操作步驟如下:
1、第一步,需要定義數組。
數組的常見類型是int,float,char等,可以通過輸入進行定義,見下圖,轉到下面的步驟。
『叄』 c語言數組初始化問題
初始化
賦值
是不同的概念
希望樓主每天對這兩個概念默念一遍
在任何基礎C編程書中都有介紹這兩個概念的
『肆』 C語言數組的初始化表示方法
C語言數組的初始化表示方法有4種,分別是:
1、定義的同時進行初始化,我們同樣用數組的初始化引出結構體的初始化,我們知道數組在定義的同時進行初始化的代碼如下:
int nums[] = {1, 3, 5};
由此可推出結構體在定義的同時進行初始化的代碼如下:
struct Person p = {"lee", 23, 1.8};
2、先定義再進行初始化,這種初始化方法其實昨天的內容里已經寫過了,代碼如下:
struct Person p;
p.name = "lee";
p.age = 23;
p.height = 1.8;
我們知道數據定義好後就不能對其進行一次性初始化了,比如如下代碼是編譯不通過的。
int nums[3];
num = {1, 2, 3}
3、第三種結構體比較例外,它可以這樣做,只不過需要對其進行一下強制類型轉換,代碼如下:
struct Person p;
p = (struct Person){"xq, 8, 8.8}
4、指定將數據賦值給指定的屬性,數組中我們見過這種寫法,代碼如下:
int nums[3] = {[0] = 2, [2] = 1, [1] = 2};
我們可以為不同的索引指定值,並不需要一定要按順序來,所以數組可以,結構體是否可以呢,當然,代碼如下:
struct Person p = {.height = 1.8, .name = "lee", .age = 23};
『伍』 關於c語言中一維數組初始化
1、前面賦值過的元素會輸出所賦的值,後面未賦值的元素會輸出此內存位置之前所存的值。
2、語法上不初始化直接使用是合法的,不會報錯。
『陸』 C語言數組 初始化
1
數組可以是任何類型的,不限於int和char,結構體數組也可以
2
數組自然是為了訪問方便,相同類型的一系列變數
3
局部變數未初始化的話值未知,全局的話是
0
4
多數時候給
0
就行了
『柒』 C語言數組初始化問題
列印兩個結果出來都是abc,但是{「」} 和「」是不一樣的空間,最後都賦給了數組
s[0]列印的是第一個字元,即'a'
希望對你有用
『捌』 簡單的c語言數組初始化
一般對數組初始化可以用以下方法實現:
1、在定義數組時對數組元素賦以初值。如:
static int a[10]={0,1,2,3,4,5,6,7,8,9};
經過上面的定義和初始化後,a[0]=0,a[1]=1,…,a[9]=9。
2、初始化時可以只對一部分元素賦初值。例如:
static int a[10]={0,1,2,3,4};
定義的數組有10個元素,但只對其中前5個元素賦了初值,後5個元素初值為0。
3、如果想使一個數組的元素值全部為0,可以用下面的方法:
static int a[10]={0,0,0,0,0,0,0,0,0,0};
不能用:
static int a[10]={0*10};
如果對static型數組不賦初值,系統會對定義的所有數組元素自動賦以0值。
4、在對全部數組元素賦初值時,可以不指定數組長度。
『玖』 c語言數組初始化
數組的編號是從0開始的,所以當i=2時,score[2]實際是第三個數,前面還有score[0]和score[1]兩個數。
『拾』 c語言如何先聲明後初始化字元數組
在定義的時候就對數組進行賦值操作稱為初始化;
先定義後賦值並不能稱為初始化,只能叫做對數組進行賦值操作。
舉例如下:
chara[]="abcd";//定義(聲明)字元數組a,並進行初始化
//以下為數組的賦值操作
charb[5];//定義(聲明)一個字元數組b
//對字元數組每個元素進行賦值
b[0]='a';
b[1]='b';
b[2]='c';
b[3]='d';
b[4]='e';