與、的區別

<string.h>

<string.h>是C版本的頭文件,包含比如strcpystrcat之類的字符串處理函數。

<cstring>

在C++標準化(1998)過程中,爲了兼容以前,標準化組織將所有這些文件都進行了新的定義,加入到了標準庫中,加入後的文件名就新增了一個"c"前綴並且去掉了.h的後綴名,所以string.h頭文件成了cstring頭文件。但是其實現卻是相同的或是兼容以前的,這就是<cstring>的來源,不要覺得又多了一個東西。相當於標準庫組織給它蓋了個章,說“你也是我的標準程序庫的一份子了”。

<string>

<string>是C++標準定義的頭文件,它定義了一個string的字符串類,裏面包含了string類的各種操作,如s.size(), s.erase(), s.insert()等。但<string>又包含了老的C版本的字符串操作如strcpy、strcat等,這就相當於,在<string>的文件中除了定義自己的string類之外,還加了一個#include<string.h>一句包含了C版本的字符串操作。

 

沒有<cstring.h>這樣的頭文件。



原文轉自:http://blog.csdn.net/luoweifu/article/details/20242307

原作者爲 luoweifu. 請尊重原作者版權


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章