| 符序列構成字符串,則程序必須用賦值語句在字符列之后存入字符串結束標記符,使其變成字符串! 〕绦蚪洺R幚碓S許多多的字符串,如存儲星期的名稱。同時存儲眾多字符串的一個實現方法是定義一個二維字符數組,讓二維數組的每一行存儲一個字符串。這樣做,要求數組每行元素個數應比可能最長的字符串字符個數還要多1個。如下面的示例所示: char weekDay[][9]= {“Sunday”,“Monday”,“Tuesday”,“Wednesday”, “Thursday”,“ Friday” ,“Saturday”}; 在C程序中,存儲多個字符串更好的方法是用指針數組。 3.常用字符串庫函數 求字符串長度函數strlen() 函數調用 strlen(str)返回str中的有效字符(不包括'\0')的個數。 字符串拷貝函數strcpy() 函數調用Strcpy(strl,str2) 將字符串str2拷貝到字符數組strl.要求字符數組strl足夠大,以便能容納被拷貝的str2的全部內容。 限制字符數的字符串拷貝函數strncpy() 函數調用strncpy(strl,str2,n)的作用是將str2中的前n個字符拷貝到strl(并附加'\0')。其中n是整型表達式,指明欲拷貝的字符個數。如果str2中的字符個數不多于n,則函數調用 strncpy(strl,str2,n)等價于strcpy(strl,str2)。 字符串連接函數strcat() 函數調用strcat(strl,str2) 將str2內容拷貝接在字符數組strl中的字符串的后面。要求字符數組strl必須足夠大,以便還能容納str2的內容。該函數調用返回strl的開始地址。注意:字符串連接前,strl和str2都各自有'\0',連接后,strl中原來的'\0'在拷貝時被覆蓋掉,而在新的字符率有效字符之后再保留一個'\0'.例如 char strl[30]=“Beijing”; char str2[30]=“ Shanghai”; 函數調用 strcat(strl,str2); printf(“%s \n”,strl); 將輸出: BeijingShanghai 字符串比較函數strcmp() 函數調用strcmp(strl,str2)批較兩個字符串的大小,對兩個字符串自左至右逐對字符相比較(按字符的 ASCII代碼值的大。,直至出現不同的字符或遇到'\' 字符為止。如直至'\' 字符,全部字符都相同,則認為相等,函數返回0值;若出現不相同的字符,則以這第一對不相同的字符比較結果為準,若strl的那個不相同字符小于str2的相應字符,函數返回一個負整數;反之,返回一個正整數。 注意:對字符串不允許施行關系運算符比較兩字符之間的大小關系,必須類似于本函數那樣,通過逐個字符的比較來實現。 字符串輸出函數puts( ) 函數調用 puts(str) 將 str的字符串輸出到終端,并將 str中的'\'以字符轉換成換行符'\n'輸出。即輸出字符串內容后,并換行。所以,puts(str)相當于printf(“%s\n”,str)。 字符串輸入函數gets( ) 函數調用gets(str)從終端輸入字符序列(包括空白符)到字符數組str,字符序列以回車符作為結束,并將輸入時的回車符轉換成'\'字符存儲。該函數調用返回str的存儲開始地址。調用get()函數與用“%s”格式調用格式輸入函數scanf輸入字符串不同,后者會自動跳過前導空白符,并以非空白符之后的空白符結束。前者用于輸入一行內的全部字符,包括可能有的空白符,存放于字符數組str,并將最后讀人的換行符轉換成字符率結束標記存儲在str中。 |
| 熱門資料下載: |
| < |
| 自考最新熱貼: |
【責任編輯:育路編輯 糾錯】 |
|
閱讀上一篇:高級語言程序設計知識點總結五 |
|
閱讀下一篇:高級語言程序設計知識點總結六 |
|
|
| 【育路網版權與免責聲明】 | |
| ① 凡本網注明稿件來源為"原創"的所有文字、圖片和音視頻稿件,版權均屬本網所有。任何媒體、網站或個人轉載、鏈接、轉貼或以其他方式復制發表時必須注明"稿件來源:育路網",違者本網將依法追究責任; | |
| ② 本網部分稿件來源于網絡,任何單位或個人認為育路網發布的內容可能涉嫌侵犯其合法權益,應該及時向育路網書面反饋,并提供身份證明、權屬證明及詳細侵權情況證明,育路網在收到上述法律文件后,將會盡快移除被控侵權內容。 | |
熱點專題 |