c語(yǔ)言中能正確定義字符串的數(shù)組 c語(yǔ)言已定義字符串?dāng)?shù)組怎么求數(shù)組a的大?。?/h1>
c語(yǔ)言已定義字符串?dāng)?shù)組怎么求數(shù)組a的大小?使用sizc語(yǔ)言中,數(shù)組元素能是字符串嗎?是的。char型二維數(shù)組的第二個(gè)數(shù)組的元素是一維數(shù)組存儲(chǔ)的字符串。如:CAHRA [2] [10] {1234567
c語(yǔ)言已定義字符串?dāng)?shù)組怎么求數(shù)組a的大???
使用siz
c語(yǔ)言中,數(shù)組元素能是字符串嗎?
是的。char型二維數(shù)組的第二個(gè)數(shù)組的元素是一維數(shù)組存儲(chǔ)的字符串。如:CAHRA [2] [10] {123456789,abcdefg };。
元素a[0]是字符串123456789,元素a[1]是字符串a(chǎn)bcd
c語(yǔ)言中字符串怎么賦值?
在C語(yǔ)言中,有兩種主要的方法來(lái)分配一個(gè)字符串。第一種是通過(guò)指針直接賦值字符串,第二種是通過(guò)數(shù)組直接賦值字符串。
1、指針賦值。
通過(guò)程序的運(yùn)行可以知道char *p #34hello#34的賦值方法是完全沒(méi)有問(wèn)題的。要理解這種賦值方法,首先要理解什么是雙引號(hào)(特別說(shuō)明:這是雙引號(hào),所以don 賦值時(shí)不要用單引號(hào)。雙引號(hào)主要做三項(xiàng)工作,即:
(1)申請(qǐng)空間(在常量區(qū))并存儲(chǔ)字符串。
(2)添加 "0 "在字符串的末尾。
(3)退回地址。
這里返回的地址被賦給char *類型的指針變量p。
2.直接通過(guò)字符數(shù)組分配字符串。
c 中如何定義一個(gè)字符串類型的變量?
一般方法和C語(yǔ)言一樣,只是C語(yǔ)言中沒(méi)有字符串的定義。要在C中定義字符串,必須使用數(shù)組或指針,比如Chara [10]?;蛘遚har * a "SFG "但是C中有一個(gè)更簡(jiǎn)單的方法,就是string類,可以直接定義字符串,比如string s(fsdfsdafs);它的優(yōu)點(diǎn)是弦的長(zhǎng)度是可變的。至于字符串類,有一些與字符串相關(guān)的函數(shù),非常實(shí)用。如果你想了解更多,你可以在網(wǎng)上下載。
c語(yǔ)言如何定義字符串?
定義字符串過(guò)程中的注意事項(xiàng):
因?yàn)樽址畬?shí)際上是一個(gè)以#390作為#39結(jié)尾的特殊字符數(shù)組,所以在定義字符串時(shí),字符串中存儲(chǔ)的最后一個(gè)元素必須是#390#39。
當(dāng)我們不 t給定字符串的具體長(zhǎng)度,我們這樣定義字符串的時(shí)候需要手:char string name[]{字符串包含的元素}。
動(dòng)態(tài)的在字符串末尾加上#390#39,否則只是一個(gè)字符數(shù)組,不是我們需要的字符串。當(dāng)我們給出字符串具體長(zhǎng)度時(shí),
也就是在這樣定義字符串的時(shí)候:char string name[string length]{ string中包含的元素},需要使字符串長(zhǎng)度等于實(shí)際字符串。
長(zhǎng)度1,否則只是一個(gè)字符數(shù)組,不是我們需要的字符串。。具體例子請(qǐng)參考定義字符串的具體格式。
3、定義字符串的具體格式
3.1,char字符串名稱[字符串長(zhǎng)度]{字符串中包含的元素}
注意:如果我們不 t將#390#39加到字符串中包含的元素上,則字符串的長(zhǎng)度應(yīng)為字符串的實(shí)際長(zhǎng)度1;
例如:char name [6] {# 39t # 39,# 39o # 39,# 39m # 39,# 39h # 39,# 39e # 39}
3.2,char字符串名稱[]{字符串中包含的元素}
注意:要以這種定義一個(gè)字符串,需要在{}中寫(xiě)# 390 # 39。
例如:charname [] {# 39t # 39,# 39o # 39,# 39m # 39,# 39h # 39,# 39e # 39,# 390 # 39}
3.3、char字符串名稱[] #34元素包含在字符串#34中
注意:以這種定義字符串的基本原理實(shí)際上是將# 34tomhe # 34轉(zhuǎn)換為{# 39t # 39、# 39O # 39、# 39m # 39、# 39h # 39、# 39E # 39 }。
例如:charname[]# 34 tomhe # 34 ltgt charname[]{ # 39t # 39,# 39o # 39,# 39m # 39,# 39h # 39,# 39e # 39,# 390 # 39}
具體代碼如下:
#包括
int main()
{
char str1[6] {#39t#39,#39o#39,#39m#39,#39h#39,#39e#39}
char str2[] {#397#39,#398#39,#398#39,#390#39}
char str3[] #34tomhe789#34
printf(#34str1 %s
#34,str1)
printf(#34str2 %s
#34,str2)
printf(#34str3 %s
第34位,str3)
返回0
}