- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
子曰质胜文则野
字 串 子曰:「質勝文則野,文勝質則史。 文質彬彬,然後君子。」 《論語﹒雍也第六》 標準的 C++ 提供了方便的程式庫,讓我們能將「字串」視為獨立的單元,以進行各種存取和剪接的處理。 字串 9.1 字串的基本概念 9.2 字串的輸入與輸出 9.3 字串的處理 9.4 字串的指標陣列 9.5 字串處理在編碼上的應用 字串的基本概念 字串在記憶體內的儲存方式 字串的宣告方式 char S1[20] = “Hello, 您好!”; // 陣列式的宣告 char S2[] = “Hello, 您好!”; // 自動設定字元陣列的長度為 13 char* pS2 = “Hello, 您好!”; // 指標式的宣告,C-style string 字串的資料型態為「char *」 以一維陣列的方式逐一列舉字元定義字串 char S3[] = {‘T’, ‘h’, ‘e’, ‘ ’, ‘b’, ‘o’, ‘y’, ‘\0’}; char S4[10] = {‘\n’, ‘G’, ‘o’, ‘!’ , ‘\0’}; 以指標的方式定義字串 char* pS2 = “嗨! 您好!”; char* pS = { ‘b’, ‘o’, ‘y’}; // 錯誤! 這個敘述在執行時發生了兩件事情: (1) 在記憶單元內存入字串 “嗨! 您好!”。 (2) 將此字串第一個字元的位址存入指標 pS2裏面。 如下圖所示: 先後儲存兩個字串 char* pS2 = “嗨! 您好!”; pS2 = “Good boy.”; 字元和字串的輸出入相關函數及管道 字串的輸出指令 char S1[20] = “Hello,您好!”; char* pS = S1; 以下各種輸出敘述都得到同的字串: cout S1; cout pS; cout S1[0]; cout pS[0]; cout在遇到字串的指標或是字串的起始位址時,會自動將輸出改為字串的內容,而不是將位址輸出。 輸出字串的位址 必需使用下列特殊語法: cout (void *)S1; cout (void *)pS; 字串的輸入指令 cin輸入資料流在遇到空隔,或新行符號都會停止。如果要輸入“Hello 您好!”的字串時,必須分兩次擷取: char S1[20], S2[20]; cin S1 S2; 可以改用函數cin.getline()。它的參數有三個: cin.getline(字串名稱,最大字串長度,結束字元); 其中「結束字元」的預設值是’\n’。 cin.getline(S1, 20); // 輸入字串並存入S1 cin.get()函數 cin.get() 一次只能輸入一個字元: char C1; cin.get(C1); // 輸入字元並存入C1 範例程式BasicString.cpp (1/2) 範例程式BasicString.cpp (2/2) 操作結果 S1 is: Hello, 您好! pS is: Hello, 您好! I is: 0012FF1C pI is: 0012FF1C *S1 is: H S1[0] is: Hello, 您好! S1[0] is: H (void*)S1[0] is:(void*)S1 is: 0012FF30 請輸入 S1 的新值: As seen by you. 輸入新值後, S1 的值為: As seen by you. 字串的處理 const Length = 40; char S1[Length] = “Good luck!”; char* pS = S1; 字串S1的第4個字元 (亦即’d’) 可以使用下列四種寫法來存取: S1[3] *(S1+3) pS[3] *(pS+3) 常用的字串處理函數 (需要標頭檔 cstring) 範例程式- 檔案 tringProc.cpp (1/3) // StringProc.cpp #include iomanip #include iostream #include cstring using namespace std; 檔案 tringProc.cpp (2/3) 檔案 tringProc.cpp (3/3) strcat(S1, S2); cout 執行 strcat(S1, S2); 後, S1 的值為: \n S1 endl; cout 執行 strcmp(S1, S2); 的值為: strcmp(S1, S2)
您可能关注的文档
- 大口径PVC管道技术经济分析.doc
- 大同杯辅导练习一.doc
- 大园煤矿(突出危险未消除安排作业).ppt
- 大型设备安全生产事故专项应急预案.doc
- 多层网络第7章 多层交换机的高.ppt
- 大型自动翻转机液压系统设计.pdf
- 大型风力发电机组无功补偿控制器的研究.pdf
- 大学中国近现代史期末考试题.doc
- 大众4S店联手万科激情试乘试驾活动.ppt
- 多媒体画面艺术基础 第一章.ppt
- 2025年智能电网柔性直流输电技术在我国西部地区应用前景.docx
- 7.2 弹力-人教版八年级物理下册.pptx
- 2025年智能电网柔性直流输电技术在智能变电站中的应用研究.docx
- 2025年智能电网柔性直流输电技术在智能电网智能化存储中的应用.docx
- 2025年智能电网柔性直流输电技术在新能源并网中的应用研究.docx
- 2025年智能电网柔性直流输电技术在智能电网智能化控制中的应用.docx
- 2025年智能电网柔性直流输电技术在智能电网智能化预测中的应用.docx
- 2025年智能电网柔性直流输电技术在智能电网智能化服务中的应用.docx
- 2025年智能电网柔性直流输电技术在智能电网智能化运维中的应用.docx
- 2025年智能电网柔性直流输电技术智能化保护系统研究.docx
最近下载
- 2024年职业院校技能大赛(智能焊接技术赛项)备考试题库(精练300题).pdf VIP
- 乒乓球裁判三级考试题目及答案.docx VIP
- 电缆电线产品合格证模板.docx VIP
- 2024年江苏中职职教高考文化统考语文试卷真题(含答案详解).docx VIP
- 探索莱姆·库哈斯:建筑创作理念的革新与回响.docx
- 门卫保安反恐演练.pptx VIP
- 装饰装修工程监理实施细则范本.docx VIP
- 水利人工砂自动计算表格 (2).xlsx VIP
- 临水、临电配置及安全用电、用水管理方案.doc VIP
- EN 1993-1-4-2006 欧洲规范3 钢结构设计 第1-4 部分:一般规则-关于不锈钢的补充规则(中文版).pdf
原创力文档


文档评论(0)