

這就是字符串的賦值,我們并沒(méi)有真的造出一個(gè)新的字符串出來(lái)

我們可以通過(guò) %s 來(lái)輸入和輸出一個(gè)字符串


只能讀到那個(gè)Hello
如果讀兩次


則第一個(gè)讀到Hello ,第二個(gè)讀到 world

分兩次輸入,每次回車
則每次讀一個(gè)


在 % 和 s 中間加上數(shù)字就會(huì)安全了,限制了字符的輸入個(gè)數(shù)
這個(gè)7是說(shuō)最多讀7個(gè)東西

第一個(gè)是123三個(gè)數(shù),不一定要7個(gè)都輸滿
第二個(gè)是超過(guò)了7個(gè),它只讀前7個(gè)

如果只輸入了第一次的1-8八個(gè)數(shù),不輸入第二次的
則第一個(gè)scanf讀 1-7,而 8 留給了第二個(gè)scanf

此時(shí)以個(gè)數(shù)為界,而不以空格為界

常見(jiàn)的錯(cuò)誤就是以為我們定義了一個(gè)char*就是定義了一個(gè)字符串變量,就可以直接用了
string其實(shí)就是將來(lái)即將指向某一個(gè)字符串?dāng)?shù)組(某個(gè)空間)的指針,但是在這個(gè)時(shí)刻,這個(gè)指針沒(méi)有被初始化
這會(huì)造成在一臺(tái)電腦上可以,換一臺(tái)電腦就不行了,這種就是指針初始化錯(cuò)誤,是初學(xué)者常見(jiàn)的錯(cuò)誤

兩個(gè)相鄰的雙引號(hào)””代表空字符串
字符串函數(shù)

標(biāo)準(zhǔn)庫(kù)里自帶的函數(shù)





兩個(gè)數(shù)組的比較永遠(yuǎn)是false,因?yàn)檫@兩個(gè)數(shù)組永遠(yuǎn)不可能是同一個(gè)地址

當(dāng)它們不想等的時(shí)候,它給出的就是兩個(gè)字符串的差值






盡可能的不要去使用這兩個(gè)函數(shù)

如果字符多了會(huì)被掐掉,所以是安全的
strncmp是指指比較前n個(gè)字符是否相等