c語言給字元數組賦值
❶ c語言中將字元串賦值給字元數組的問題
char s[20];s="helo";這樣錯誤的原因就是:不能用賦值語句將一個字元串常量直接給一個字元數組賦值。
char s[20];
char ss[]="hello";
s=ss;錯誤原因是:不能用賦值語句將一個字元數組直接給一個字元數組賦值
,即字元串的復制(c語言中,但是在c++的string 類,上面的賦值是正確的)必須用strcpy()函數實現。
而char a[ ]=」toyou「;正確的原因是:因為在聲明數組變數的時候就是,為其開辟空間,並為其初始化,這樣才是符合c語言語法的。
❷ C語言中怎麼字元串賦值
需要准備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。
❸ 怎麼進行字元串賦值C語言
在C語言中,字元串的賦值主要有兩種方法,第一種是通過指針的方式直接賦值,第二種是通過數組直接賦值。
1、指針式賦值。
❹ c語言中 字元串賦值給數組的三種表達方式是什麼
1樓的答案是錯誤的,建議回答別人問題還是要看看書的!
第一種方式:定義的時候進行初始化
char
str[200]={"abcd"};//這里去掉大括弧也行
第二種方式:對數組各元素單獨賦值
char
str[200];
str[200]={'a','b','c','d'};
/*編譯系統會在最後加上'\0'的,然後就是不能使用str[200]="abcd"的方式對字元數組進行整體賦值*/
第三種方式:應該是使用指針吧
char
*str="abcd";
或者
char
*str;
str="abcd";
使用指針時,這兩種方式都是可以的,而且你可以使用下標的方式引用字元串中的各字元
❺ C語言 如何給字元指針數組賦值
字元指針數組的賦值和普通數組的賦值是一樣的,只不過字元指針數組里的元素是指針。
以下是字元指針數組賦值的示例:
char* pChar[5];
char str1[] = "First";
char str2[] = "Second";
char str3[] = "Third";
char str4[] = "Fourth";
char str5[] = "Fifth";
pChar[0] = str1;
pChar[1] = str2;
pChar[2] = str3;
pChar[3] = str4;
pChar[4] = str5;
for (int i=0;i<5;i++)
{
printf("pChar[%d] = %s\n",i,pChar[i]);
}
❻ C語言對字元數組的賦值
顯然錯,char
str[14]是固定大小的字元數組,而str[]是不確定大小的字元數組。是兩個不同的數組,而且在同一模塊中數組名不能相同。可以這樣改
char
str[]={"i
love
china!"};字元個數為14(末尾有個『\0』)或者char
str[14]={"i
love
china!"};
❼ c語言利用循環給字元數組賦值怎麼做
int main()
{
int array[10];
for(int i=0;i<10;i++) //I 不能超過數組的最大長度
{
a[i]=i;
}
return 0;
}
❽ C語言 怎麼把字元數組中的字元賦值給字元變數
第一種寫法,等同於char a[10] = {"abc"};
第一種寫法,用一個字元串賦值,實際上保存了4個位元組(包含字元串結束符)。
第二種寫法,只賦值了三個位元組。
1、char c[5];
c[0]=』H』; c[1]=』e』; c[2]=』l』; c[3]=』l』; c[4]=』o』;
2、charc[5]={『H』,』e』,』l』,』l』,』o』};
3、(1)如果在定義字元數組時不進行初始化,則數組中各元素的值是不可預測的;
(2)如果花括弧中提供的初值個數(即字元個數)大於數組長度,則按語法錯誤處理;
(3)如果花括弧中提供的初值個數(即字元個數)小於數組長度,則只將這些字元賦給數組中前面那些元素,其餘的元素自動定為空字元(即『\0』);
4、(如何將字元串賦值給字元數組)
C語言中,將字元串作為字元數組來處理的。C語言規定了一個「字元串結束標志」,以字元』\0』作為標志。為此,再對字元數組初始化的方法補充一種用字元串常量來使字元數組初始化方法:
char c[] = {「Hello」};
或 char c[] =「Hello」; 注意:數組c的長度不是5,而是6.
上面的初始化等價於:char c[5]={『H』,』e』,』l』,』l』,』o』,』\0』};
而不等價於:charc[5]={『H』,』e』,』l』,』l』,』o』};
5、字元數組的輸出
char c[] ={「Hello」};
printf(「%s」,c);
6、(如何將字元串賦值給字元數組)
strcpy(字元數組1,字元串2)
eg: char str1[10]=』』, str2={「Hello」};
strcpy(str1,str2);
執行後str1狀態為:
H
e
l
l
o
\0
\0
\0
\0
\0
(1)「字元數組1」必須寫成數組名形式(如str1),「字元串2」可以是數組名,也可以是字元串常量。eg strcpy(str1, 「Hello」);
(2)不能用賦值語句將一個字元串常量或字元數組直接給一個字元數組。如下面兩句都是不合法的:str1=」Hello」;
str1=str2;
而只能用strcpy函數將一個字元串復制到另一個字元數組中去,賦值語句只能將一個字元賦給一個字元型變數或者字元數組元素。如下面的語句是合法的:
char c[5],c1,c2;
c1=』A』;c2=』B』;
c[0]=』H』; c[1]=』e』; c[2]=』l』; c[3]=』l』; c[4]=』o』;
7、strlen函數是測試字元串實際長度(不包含『\0』在內)的函數。
char c[10]=」Hello」』
printf(「%d」,strlen(c)); 或者Printf(「%d」,「Hello」); 輸出為5
❾ C語言里如何把輸入字元串賦值給字元數組
char
c[10];
//c是數組名,代表數組的首地址。要是想讓數組中存放一個字元串,只需知道首地址即可。所以可以用scanf("%s",c);因為c本身就是地址,所以不用加&
char
*s;
//s是指針變數,指針可以存放一個地址值
s="abcde";
//c語言中字元串常量是以數組的形式在內存中存放,這條賦值語句,相當於是把abcde的首地址賦給了指針變數s
char
s;
//s是一個字元變數,只能給其賦一個合法的字元
❿ c語言中如何給數組定義並賦初值
字元串數組定義賦值:
char c[6]={'c', ' h ', 'i', 'n', 'a' , '