久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

C++/C中的字符串

作者:龔平   來源:本站原創   點擊數:  更新時間:2014年03月13日   【字體:

C++中的字符串因為有了標準庫string的引入,使得字符串的處理也變得容易了,但是在也會導致一個新的問題,在C語言中的一些字符串處理問題也隨之而來啦。
 
在C++中的字符串string與C語言中的字符串存在較大的區別,首先我們知道在C語言中字符串是字符串常量,是以null結尾的字符串,通常我們可以將字符串看做是一個以null字符結尾的字符數組,但是如前面的文章中已將分析了字符串和字符數組并不是等價的,而是存在一定的差別的。在C語言中字符串就是一個常量,是不能修改的,對字符串的修改都會導致意外的結果。
 
但是有時候C++也要處理關于C語言的一些問題,這時候我們需要采用cstring庫,該庫與C語言中的string.h有很大的相似性,很多函數也是一致的。其中很多函數比如:strcat,strcpy,strncpy,strlen,strcmp等函數都存在的,這時候也是以null作為字符串的結尾符的。
 
首先說明一下C++中的字符串string,這時候的string與C語言中的字符串存在很大的差別,首先string是一個標志庫,是一種類型,該類型的變量是可以復制的,可以被修改的,也不是以null結尾的。而C語言中的字符串可以認為是一個字符串字面值,是不能修改的。
 
同樣在字符串長度上也存在一定的差別,在string中采用該標準庫提高的size()函數確定字符串的長度,而C語言中的字符串則需要采用sizeof或者strlen函數來判斷,通常strlen的值是不包含null的,但是sizeof是包含null的。
 
在指針操作過程中存在一定的差別,在string中,string *類型的指針指向一個string對象,而C語言中字符串的指針通常是把字符串當做數組處理,這時候指針指向的字符串的首個元素。這些都是在C++中處理時應該注意的問題。
 
正如在給C++初學者的50個建議中提到的,不要把C++當做C的擴展,而應該當做一種新的語言學習,每一種語言有一種思想。

關閉窗口

相關文章

主站蜘蛛池模板: 精品九九九 | 国产一区在线看 | 中文字幕在线观看av | 久久精品视频12 | 欧美日韩一区在线 | 精品国产精品三级精品av网址 | 成人在线观看免费视频 | 成人性视频免费网站 | 国产精品福利一区二区三区 | 亚洲精品久久久一区二区三区 | 亚洲免费视频网址 | 国产成人啪免费观看软件 | 午夜久久久久久久久久一区二区 | 激情三区 | 亚洲精品v日韩精品 | 久久精品亚洲欧美日韩精品中文字幕 | 亚洲va国产日韩欧美精品色婷婷 | 久久久久久国产精品免费免费狐狸 | 在线观看国产视频 | 中文字幕日韩专区 | 99re在线视频观看 | 免费亚洲成人 | 久久r精品| 日本中出视频 | 国产九九精品 | 国产美女特级嫩嫩嫩bbb片 | 日韩影音 | 草草在线观看 | 日韩精品在线看 | 国产精品一区二区av | 久久精品成人 | 欧洲av一区 | 奇米久久久 | 羞羞网站在线观看 | 久色| 久久久久久国产精品免费免费狐狸 | 久久综合888 | 黄色国产视频 | 男人天堂网址 | 丁香综合 | 欧美亚洲日本 |