課程
/后端開(kāi)發(fā)
/C
/C語(yǔ)言入門(mén)
這個(gè)題目里面到底什么時(shí)候要在string后面添【】?。靠梢酝茝V一下嗎?謝謝!
2017-08-09
源自:C語(yǔ)言入門(mén) 6-7
正在回答
+1 哈哈哈
眼熟你了哈哈哈紅紅火火
我們來(lái)講講什么是字符串,在C語(yǔ)言里面,字符串說(shuō)白了就是字符數(shù)組,比如char a[4] = "ABC", 等價(jià)于char a[4] = {'A', 'B', 'C', '\0'},這個(gè)數(shù)組比較特殊,后面總得有一個(gè)\0,這是字符串結(jié)束的標(biāo)志,對(duì)了,我們還可以這樣改寫(xiě),char a[] = "ABC",看出什么了沒(méi),那就是中括號(hào)里面的4被我們省掉了,這是合語(yǔ)法的,也就是當(dāng)你不知道有多少個(gè)元素時(shí),我們這樣定義編譯器自動(dòng)幫你分配長(zhǎng)度,所以就有了題目這樣的定義char string[] = "我在慕課網(wǎng)上學(xué)習(xí)IT技能!";如果你不想節(jié)省時(shí)間,你可以分配長(zhǎng)度,一個(gè)字符是一個(gè)字節(jié)的長(zhǎng)度。同樣,這道題也有一個(gè)子函數(shù),say(string); 它把數(shù)組傳進(jìn)去了,注意,這里的string不能改為string[],這種寫(xiě)法在數(shù)組定義和初始化才用到,好,我們看子函數(shù)部分,void say(char string[]),這里的形參相當(dāng)于定義,所以必須寫(xiě)成string[],當(dāng)然以后你學(xué)到指針還可以把它改為void say(char *string),這里不討論,好了,printf("%s\n", string); 打印字符數(shù)組,這里也不是定義和初始化,所以,也不能寫(xiě)成string[]??偨Y(jié),數(shù)組定義和初始化要帶[],其他時(shí)候,不用帶[],可能說(shuō)的不大明白,可以繼續(xù)問(wèn)我
舉報(bào)
C語(yǔ)言入門(mén)視頻教程,帶你進(jìn)入編程世界的必修課-C語(yǔ)言
2 回答我這個(gè)程序算不算是已經(jīng)回答了問(wèn)題
2 回答應(yīng)該是本身已經(jīng)會(huì)了一個(gè)單詞
3 回答age=getAge(numPeople-1)+2; 這里的-1 是什么意思 不是已經(jīng)是第一個(gè)人了嗎
3 回答高中畢業(yè)之后,數(shù)學(xué)就已經(jīng)荒廢了。。
2 回答是不是被干廢了??
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2017-11-22
+1 哈哈哈
2017-10-06
眼熟你了哈哈哈紅紅火火
2017-08-09
我們來(lái)講講什么是字符串,在C語(yǔ)言里面,字符串說(shuō)白了就是字符數(shù)組,比如char a[4] = "ABC", 等價(jià)于char a[4] = {'A', 'B', 'C', '\0'},這個(gè)數(shù)組比較特殊,后面總得有一個(gè)\0,這是字符串結(jié)束的標(biāo)志,對(duì)了,我們還可以這樣改寫(xiě),char a[] = "ABC",看出什么了沒(méi),那就是中括號(hào)里面的4被我們省掉了,這是合語(yǔ)法的,也就是當(dāng)你不知道有多少個(gè)元素時(shí),我們這樣定義編譯器自動(dòng)幫你分配長(zhǎng)度,所以就有了題目這樣的定義char string[] = "我在慕課網(wǎng)上學(xué)習(xí)IT技能!";如果你不想節(jié)省時(shí)間,你可以分配長(zhǎng)度,一個(gè)字符是一個(gè)字節(jié)的長(zhǎng)度。同樣,這道題也有一個(gè)子函數(shù),say(string); 它把數(shù)組傳進(jìn)去了,注意,這里的string不能改為string[],這種寫(xiě)法在數(shù)組定義和初始化才用到,好,我們看子函數(shù)部分,void say(char string[]),這里的形參相當(dāng)于定義,所以必須寫(xiě)成string[],當(dāng)然以后你學(xué)到指針還可以把它改為void say(char *string),這里不討論,好了,printf("%s\n", string); 打印字符數(shù)組,這里也不是定義和初始化,所以,也不能寫(xiě)成string[]??偨Y(jié),數(shù)組定義和初始化要帶[],其他時(shí)候,不用帶[],可能說(shuō)的不大明白,可以繼續(xù)問(wèn)我