c語言字元串賦值
A. c語言字元串賦值
b[]中最後一個逗號是佔了一個位元組的,因此數組的長度為10。當把字元串賦給一個數組時,字元串後面還有一個空操作符,要佔個位元組,這個就剛好了。
B. C語言怎樣給字元數組賦值
1、單字元賦值,可通過數組下標方式或指針方式,引用數組元素,進行賦值。
例子:
char a[10];
char ch='a';
for( i=0;i<10;i++ )
a[i]=ch+i ; //可通過數組下標引用數組元素,完成賦值
char *p;
for( p=a; p<a+10; p++ )
*p=ch++; //通過指針對數組相應元素賦
2、字元串賦值,可使用string.h頭文件中的字元串操作函數進行賦值。
例子:
char a[10];
strcpy( a, "abcdefgh");
sprintf(a, "%s", "abcdefgh");
(2)c語言字元串賦值擴展閱讀:
C語言給字元數組賦值的優點:
1、簡潔緊湊、靈活方便
C語言一共只有32個關鍵字,9種控制語句,程序書寫形式自由,區分大小寫。把高級語言的基本結構和語句與低級語言的實用性結合起來。C 語言可以像匯編語言一樣對位、位元組和地址進行操作,而這三者是計算機最基本的工作單元。
2、運算符豐富
C語言的運算符包含的范圍很廣泛,共有34種運算符。C語言把括弧、賦值、強制類型轉換等都作為運算符處理。從而使C語言的運算類型極其豐富,表達式類型多樣化。靈活使用各種運算符可以實現在其它高級語言中難以實現的運算。
C. c語言 如何把一個字元串的值賦給另一個字元串
你用字元數組的話,用循環把每一個字元數組單元都賦給另一個字元數組單元,你這樣直接用數字賦值肯定是錯的
D. C語言字元串賦值
字元串指針只可以在定義的時候可以直接賦值,在定義之後要賦值可以用 strcpy(),memcpy(),sprintf()之類的函數,在這里你可以這樣寫 :memcpy(b,"AT+PH",6);
E. 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
F. C語言字元串賦值操作
首先要弄清楚 什麼是 字元串指針,還有什麼叫字元數組。
字元串指針只是一個指針,就像你上面 的 A 裡面的 s 沒有初始化,那麼你調用讀串 函數 數據要寫到哪裡呢? 不知道吧 ,因 為s 不知道 指向哪裡。
char *s; s="ABCDEF"; 這又是什麼意思呢? 這個操作 是將一個 串("ABCDEF" 在內存中已經存在了),只是將這個串的首地址 賦給 s ,也就是讓 s 指向 這個串。你可以把這個串理解成 在編譯時期就已經確定好了的數據。我們可以用它。但不能更改他的值。
什麼叫 字元數組呢? 首先要弄清楚 什麼叫 數組 ,如 int array[4]={1,2,3,4}; 這是什麼意思呢?
就是 四個連續的整數 吧。 同樣 字元數組也 是 連續的 N個字元吧 如 char arr[3]={'A','B','C'};
這是一個數組 ,有三個元素,分別是 A B C ,看起來「好像」字元串呀,為什麼是 「好像」,因為它與字元串 有著本質的區別。字元串 是 N 個連續的字元 +『\0』 組成, 我們上面的 例子只有 N個連續的字元,沒有 『\0』 吧。所以它不是字元串。 為了使用方便 呢,編譯器允許我們 使用如下方式初始化一個字元串。
1:char *s="abcdef";
2:char ss[10]="abcd";
3:char sss[10]={"kkkk"};
上面三種方式 都是正確的,但是 有區別。
1: 上面已經講了,是將已經存在於內存中的字元串的首地址 賦值給 s
2: 這是將已經存在於內存中的字元串 拷貝到ss 這個數組裡面,是一個拷貝 過程,產生的影響是系統中存在兩個 相同的字元串。
3:同2
G. C語言中怎麼字元串賦值
需要准備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。
H. c語言字元串賦值
char
string[500]="abcdefg";
這個就是說你在給一個數組賦值
但是如果你定義完數組以後又這樣
string[500]="abcdefg";
就是說你在給數組里的第500個元素賦值
首先數組下標最大是499
沒有500
其次
只能存放一個字元你確放了一個字元串
當然不對了
I. C語言中將字元串賦值給字元數組
char c[10];
//c是數組名,代表數組的首地址。要是想讓數組中存放一個字元串,只需知道首地址即可。所以可以用scanf("%s",c);因為c本身就是地址,所以不用加&
char *s; //s是指針變數,指針可以存放一個地址值
s="ABCDE"; //c語言中字元串常量是以數組的形式在內存中存放,這條賦值語句,相當於是把ABCDE的首地址賦給了指針變數s
char s; //s是一個字元變數,只能給其賦一個合法的字元
J. C語言里如何把輸入字元串賦值給字元數組
說個例子吧~
char a[10];
怎麼給這個數組賦值呢?
1、定義的時候直接用字元串賦值
char a[10]="hello";
注意:不能先定義再給它賦值,如char a[10]; a[10]="hello";這樣是錯誤的!
2、對數組中字元逐個賦值
char a[10]={'h','e','l','l','o'};
3、利用strcpy
char a[10]; strcpy(a, "hello");