C++ String 及其與char[]的比較


   在學習C++之前  一般都是學過了C語言了  

在C語言中   我們對字符串進行保存操作  使用的是char[]

但是在C++中    string比char[]的使用更為頻繁  常見    下面稍微講一下我對於string的認知

1.與其他的標准庫類型一樣   用戶程序需要使用String類型對象  就必須包含相關的頭文件   (為了編寫方便   需要提供合適的using聲明)

#include <string>
using std::string;

2.string對象的定義與初始化

    string s1;//創建空字符串
    string s2("wo yao ac");//創建初始值為wo yao ac的字符串s2
    string s3(s2);//創建s2的副本   s3值的改變  不影響s2
    string s4(2,'a');//創建字符串s4   值為2個字符‘a’
    string s5=s2+s3;//創建字符串s5   值為s2+s3

輸出結果   為

 

3.string的讀寫

在C中  我們使用 下面倆種方法讀入字符串

scanf("%s",s1);
gets(s1);

而在C++中    string類型的數據使用的讀入方法是cin

cin>>s1;

讀取並忽略開頭的所以空白字符   讀取字符串至再次遇到空白字符為止    類似於scanf("%s",s1);

不過在解決問題的時候   我們不可能只需要保存連續的非空字符

這時候我們就需要一個像gets()一樣的讀入方法      getline(cin,s1);

4.string對象的操作

    s1.empty();   //判斷s1是否為空   是就返回true   不是就返回false
    s2.size();    //返回s2中的字符數目
    s1[i];   //返回s1中下標為i的那個字符
    s1+s2;  //返回一個字符串  其等於s1的值后面緊接着s2
    s1=s2;   //將s2的值付給s1
  s1==s2  //比較s1與s2的值,相等就返回true   不然就返回false

 注意:string類型的字符串也可以使用>  < 比較大小

5.string對象中字符的處理

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM