C語言可以給字元陣列賦值的方法

2021-08-30 06:01:11 字數 430 閱讀 7772

char a[10];

怎麼給這個陣列賦值呢?

1、定義的時候直接用字串賦值

char a[10]="hello";

注意:不能先定義再給它賦值,如char a[10]; a[10]="hello";這樣是錯誤的!

2、對陣列中字元逐個賦值

char a[10]=;

3、利用strcpy

char a[10]; strcpy(a, "hello");

易錯情況:

1、char a[10]; a[10]="hello";//乙個字元怎麼能容納乙個字串?況且a[10]也是不存在的!

2、char a[10]; a="hello";//這種情況容易出現,a雖然是指標,但是它已經指向在堆疊中分配的10個字元空間,現在這個情況a又指向資料區中的hello常量,這裡的指標a出現混亂,不允許!

C語言可以給字元陣列賦值的方法

分類 c舉報 語言c學了這麼多年的c語言,突然發現連字串賦值都出錯,真的很傷心。char a 10 怎麼給這個陣列賦值呢?1 定義的時候直接用字串賦值 char a 10 hello 注意 不能先定義再給它賦值,如char a 10 a 10 hello 這樣是錯誤的!2 對陣列中字元逐個賦值 ch...

他山之石 C語言可以給字元陣列賦值的方法

char a 10 怎麼給這個陣列賦值呢?1 定義的時候直接用字串賦值 char a 10 hello 注意 不能先定義再給它賦值,如char a 10 a 10 hello 這樣是錯誤的!2 對陣列中字元逐個賦值 char a 10 3 利用strcpy char a 10 strcpy a,he...

c語言不能把字元常量賦值給字元陣列

char s 20 s helo 這樣是錯誤的,原因就是不能用賦值語句將乙個字串常量直接給乙個字元陣列賦值。char s 20 char ss hello s ss 這也是錯誤的,原因是不能用賦值語句將乙個字元陣列直接給乙個字元陣列賦值 即字串的複製 c語言中,但是在c 的string 類,上面的賦...