c語言如何將賦值過的陣列置空,C語言 如何將一個賦值過的陣列置空

時間 2021-08-30 09:32:14

1樓:幻翼高達

需要準備的材料分別有:電腦、c語言編譯器。

1、首先,開啟c語言編譯器,新建一個初始.cpp檔案,例如:test.cpp。

2、在test.cpp檔案中,輸入c語言**:

char a[10] = "hello";

a[0] = '\0';

printf("%s", a);

3、編譯器執行test.cpp檔案,此時字串被成功置空被列印。

2樓:我叫王土土豆

c語言 將一個賦值過的陣列置空步驟如下:

1、開啟visual c++ 6.0,新建一個c++ source file原始檔。

2、輸入以下**:

#include "stdio.h"

#include "string.h"

void main(){

char a[10];

char b[10];

strcpy( a, "abcdefgh");

sprintf(b, "%s", "abcdefgh");

printf("%d\n",a);

printf("%d\n",b);

3、圖中紅色部分,第一個紅框是匯入的標頭檔案,第二個紅框是陣列賦值的函式。

4、編譯執行,如果出現1 error表示**錯誤,錯誤需自行查詢,如圖所示編譯成功。

5、執行後就將一個賦值過的陣列置空。

3樓:聽不清啊

初學者常用迴圈將整個陣列重新賦值一遍:

for(i=0;i、或

void *memset(void *s, int ch, size_t n);

函式解釋:將s中前n個位元組 (typedef unsigned int size_t )用 ch 替換並返回 s 。

memset:作用是在一段記憶體塊中填充某個給定的值,它是對較大的結構體或陣列進行清零操作的一種最快方法。

像上面的對a陣列重新置空,可以使用以下語句:

memset(a,0,sizeof(a))

4樓:郝在益

memset函式是可以達到你的要求,我一般也使用這個函式,你自己也可以編寫一個函式用以自己清零,就是把陣列的每一個字元都賦值為「\0」就可以了。

5樓:邊久

#include

#include

int main(void)

;int i=0;

for(i=0;i<3;i++)

printf("%c\t",a[i]);

memset(a,'\0',sizeof(a)); // 也可以 bzero(a,sizeof(a))

while(i<3)

printf("\n%c\t%c\t%c",a[i]);

return 0;

}程式最後輸出為空,說明已經被清空了,可以再次賦值。

使用到的函式原型為:void *memset(void *s, int c, size_t n); bzero(void *s, size_t n);

其中c一般為'\0',size_t n 為你所要晴空的陣列長度。

除了清空陣列外,也空清空緩衝區,此外還有void swab(const void *from,void *to,ssize_t n )和

wchar_*wmemset(wchar_t *wcs,wchar_t wc,size_t n);)也可以,只是比較少用到。前兩種比較用得多一些。

6樓:

memset(arr, 0, sizeof(arr));

在c語言中如何把陣列清空

7樓:一嘆

c語言貌似沒有把陣列清空的方法啊,或許你可以清除就把它賦值為0,這樣在形式上實現了清楚,不然的話只有動態申請的記憶體可以釋放。

8樓:沃英傑

int a[4] = ;

1、 通過陣列遍歷,逐個賦值為0。

定義迴圈變數int i;

for(i = 0; i < 4; i ++)a[i]=0;

該程式功能為遍歷陣列a,逐個將元素賦值為0,實現清空效果。

9樓:風若遠去何人留

有兩種方法可以實現。

為方便說明,定義整型陣列a,並實現將a清空。

int a[4] = ;

1、 通過陣列遍歷,逐個賦值為0。

定義迴圈變數int i;

for(i = 0; i < 4; i ++)a[i]=0;

該程式功能為遍歷陣列a,逐個將元素賦值為0,實現清空效果。

2、 藉助記憶體賦值函式memset,整體賦值為0。

void *memset(void *dst, int value, size_t size);

這個函式的功能為將src上,大小為size位元組的資料賦值為value。需要注意的是,該函式賦值是以位元組為單位的。

呼叫該函式時需要引用標頭檔案string.h,即#include

清空陣列的**為

memset(a,0,sizeof(a));

10樓:匿名使用者

初始化時可以這樣

a[4]=;

或者memset(a,0,sizeof(a));

賦值時可以這樣:

memset(a,0,sizeof(a));

memset需要#include

c語言 如何將已賦值的字串初始化為空?

11樓:吉祥二進位制

可以使用memset函式將字串陣列中所有元素全部設定為\0即可。

函式原型:void *memset(void *s, int ch, size_t n);

函式說明:將s中前n個位元組 (typedef unsigned int size_t )用 ch 替換並返回 s 。

示例:#include

#include

int main()

12樓:科技鳥

如果是指標字串,可以直接給字串賦值為null,如果不是指標字串的話,沒必要初始化,因為他們用完後就自動釋放記憶體空間了。

51微控制器c語言程式設計怎樣建立一個空的陣列,之後我要把資料放到陣列裡

13樓:

很簡單,定義一個指定長度(必須有)的陣列,不初始化就可以了,最好指定一下儲存段,在訪問時可以優化一些。

例:int data address[20]; /* 整型陣列,名稱 address,長度 20,儲存在 data 段 */

char idata name[10]; /* 字元陣列,名稱 name,長度 10,儲存在 idata 段 */

long xdata table[100]; /* 長整型陣列,名稱 table, 長度 100,儲存在 xdata 段 */

14樓:

unsigned char a;

a[0] = 0x31;這樣賦值就可以

c語言陣列賦值問題,c語言中如何給陣列定義並賦初值?

靈凍冰晶霜月 我不清楚你想問什麼,不過第二種寫法是對的。char chars 11 是定義了一個初始值為空總數為11的字元陣列。char s c language 定義一個總數為11的字元陣列,但是有初值。注意是11個不是10個,用這種方定義的字元陣列末尾會加一個 0。陣列的賦值通常是使用花括號來表...

請問在C語言裡如何將陣列元素的個數設為輸入的值

聽時間流逝 我當初學c的時候有過和你一樣的想法,但是陣列的記憶體只能靜態分配,所以你必須指明陣列的大小。比如 int a 10 char ch i love china 一個顯式指定大小,一個是隱式指定。 逐夢兮樂 這個陣列不能是變數,只能是常量,沒法設定的。 浪尖上打禪 這其實就是動態開闢陣列,需...

c語言中如何將結果傳遞給另c語言檔案

拒絕996的瀟灑程式設計師 通過函式的傳址引數 引用或指標 或返回值傳遞。多個人合作時,必須提前約定好介面函式的宣告格式。這裡的所謂介面函式就是所有可能需要用來互相傳遞結果的函式 這個要用 版本管理工具,有商用的也有開源的。開源的比如svn,cvs,商用的如clearcase等。工作的模式基本上是 ...