第10章-字符串_第1頁
第10章-字符串_第2頁
第10章-字符串_第3頁
第10章-字符串_第4頁
第10章-字符串_第5頁
已閱讀5頁,還剩59頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、2022-3-272/632022-3-273/63用雙引號括起的一串字符用雙引號括起的一串字符是字符串常量,是字符串常量,C C語言自語言自動為其添加動為其添加00結(jié)束符結(jié)束符一串以一串以00結(jié)尾的字符在結(jié)尾的字符在C C語言中被看做字符串語言中被看做字符串2022-3-274/63是字符數(shù)組,但不代表字符串是字符數(shù)組,但不代表字符串?dāng)?shù)組的最后一個元素必須是數(shù)組的最后一個元素必須是02022-3-275/632022-3-276/632022-3-277/63字符串是一串用雙引號引起來的字符字符串是一串用雙引號引起來的字符字符數(shù)組就是每個元素都是字符型的數(shù)組字符數(shù)組就是每個元素都是字符型的數(shù)

2、組字符指針就是指向字符類型數(shù)據(jù)的指針字符指針就是指向字符類型數(shù)據(jù)的指針Hello ChinapStr數(shù)組最后一個元素必須是數(shù)組最后一個元素必須是0才表示字符串才表示字符串2022-3-278/63 = Hello China;Hello Chinachar str12 = Hello China;char *pStr; = Hello China;數(shù)組名數(shù)組名是地址常量是地址常量 字符指針字符指針是變量是變量 2022-3-279/63char *pStr = Hello China;Hello Chinachar str12 = Hello China;char *pStr;pStr = H

3、ello China;strpStr = &str0;2022-3-2710/632022-3-2711/63一般不用字符串長度控制一般不用字符串長度控制2022-3-2712/63scanf(%s,str); printf(%s,str);gets(str); puts(str);不能輸入帶空格不能輸入帶空格的字符串的字符串可以輸入帶空格可以輸入帶空格的字符串的字符串2022-3-2713/63scanf(%s,str); printf(%s,str);gets(str); puts(str);空格、回車或制空格、回車或制表(表(TabTab)符是輸)符是輸入數(shù)據(jù)的分隔符入數(shù)據(jù)的分隔

4、符,因而不能被讀,因而不能被讀入,輸入遇到這入,輸入遇到這些字符時,系統(tǒng)些字符時,系統(tǒng)認(rèn)為字符串輸入認(rèn)為字符串輸入結(jié)束結(jié)束2022-3-2714/632022-3-2715/632022-3-2716/632022-3-2717/632022-3-2718/63不限制輸入字符串的長度不限制輸入字符串的長度易引起緩沖區(qū)溢出易引起緩沖區(qū)溢出,給黑客攻擊以可乘之機(jī),給黑客攻擊以可乘之機(jī)2022-3-2719/63能夠能夠限制輸入字符串的長度限制輸入字符串的長度2022-3-2720/632022-3-2721/632022-3-2722/632022-3-2723/632022-3-2724/63s

5、trcpy(目的字符串目的字符串,源字符串源字符串);string copystrlen(字符串字符串);string lengthstrcat(目的字符串目的字符串,源字符串源字符串);string combinationstrcmp(字符串字符串1,字符串字符串2);string comparison2022-3-2725/63strlen(字符串字符串);string length打印結(jié)果是打印結(jié)果是 5 5、6 6,還是,還是1010?不包括不包括00的實際字符的個數(shù)的實際字符的個數(shù)2022-3-2726/632022-3-2727/63strlen(字符串字符串);string le

6、ngth用長度控制字符串輸出用長度控制字符串輸出2022-3-2728/632022-3-2729/63strcpy(目的字符串目的字符串,源字符串源字符串);string copy字符串能否用字符串能否用= =整體復(fù)制?整體復(fù)制?str2 = str1;strcpy(str2, str1);注意復(fù)制的方向!注意復(fù)制的方向!str2必須足夠大!必須足夠大!2022-3-2730/63strcpy(目的字符串目的字符串,源字符串源字符串);string copy字符串能否用字符串能否用= =整體復(fù)制?整體復(fù)制?str2 = str1;strcpy(str2, str1);想想這個函數(shù)是如何想想這

7、個函數(shù)是如何實現(xiàn)字符串復(fù)制的?實現(xiàn)字符串復(fù)制的?2022-3-2731/632022-3-2732/632022-3-2733/63strcat(目的字符串目的字符串,源字符串源字符串);string combinationstrcat(str1, str2);str1必須足夠大!必須足夠大!2022-3-2734/632022-3-2735/632022-3-2736/632022-3-2737/63strcmp(字符串字符串1,字符串字符串2);string comparison字符串能否用字符串能否用 、 、=比較大?。勘容^大???if (str2 = str1)if (strcmp(st

8、r2, str1) = 0)2022-3-2738/63strcmp(字符串字符串1,字符串字符串2);string comparison字符串是如何比較大小的?字符串是如何比較大小的?當(dāng)出現(xiàn)第一對不相等的字符時,就當(dāng)出現(xiàn)第一對不相等的字符時,就由這兩個字符決定所在字符串的大由這兩個字符決定所在字符串的大小,返回其小,返回其ASCIIASCII碼比較的結(jié)果值碼比較的結(jié)果值comparecomputercompare computer 表示表示strcmp(str1, str2) 0為真為真2022-3-2739/632022-3-2740/632022-3-2741/632022-3-2742

9、/632022-3-2743/632022-3-2744/632022-3-2745/632022-3-2746/632022-3-2747/632022-3-2748/632022-3-2749/632022-3-2750/632022-3-2751/632022-3-2752/632022-3-2753/63if( if( ( p=strstr( pSrc, ps1( p=strstr( pSrc, ps1 ) ) ) =NULL ) =NULL )printf(printf(未找到子串未找到子串%s n, ps1);%s n, ps1);else printf(else printf(子

10、串子串%s%s在第在第%d%d位位n, n, ps1, p-pSrc+1ps1, p-pSrc+1 ); );if( ( p=strstr(pSrc,ps2 ) =NULL )if( ( p=strstr(pSrc,ps2 ) =NULL )printf(printf(未找到子串未找到子串%s n, ps2);%s n, ps2);else printf(else printf(子串子串%s%s在第在第%d%d位位n, ps2, p-pSrc+1 );n, ps2, p-pSrc+1 ); 2022-3-2754/632022-3-2755/632022-3-2756/632022-3-2757/632022-3-2758/63srcStr+srcStrdstStr+dstStrsrcStrdstStrsrcStrdstStrsrcStrdstStrsrcStrdstStrsrcStrdstStrsrcStrdstStrsrcStrdstStrsrcStrdstStrsrcStrdstStrsrcStrdstStrsrcStrdstStr2022-3-2759/63srcStr+srcStrdstStr+dstStrsrcStrdstStrsrcStrdstStrsrcStrdstStrsrcStrdstStrsrcStrdstStrsrcStr

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論