1. string的初始化
定義物件時指定了初始值的物件被稱為是已初始化的。
c++支援兩種初始化變數的形式:複製初始化(拷貝初始化)和直接初始化。
複製初始化用等號(=)來表示,編譯器把等號右側的初始值拷貝到新建立的物件中去。
直接初始化是把初始化式放在括號中。
**一:
#include "stdafx.h"
#include "iostream"
#include using namespace std;
int main()
{ string s; // 預設建構函式(預設初始化),s為空串
string s1="my"; // 複製初始化,等價於s1("my"), s1是字面值「my」的副本
string s2(s1); // 用s1的乙個副本來初始化s2
string s3("value"); // 用"value"初始化s3,直接初始化
string s4(6,'w'); // 用6個w字元初始化,直接初始化,wwwwww
string s; //定義乙個名為s的空string
cin >> s; //將標準輸入的內容讀取到s中
上面在執行讀取操作時,string物件會自動忽略開頭的空白(即空格符、換行符、製表符等),並從第乙個真正的字元開始讀起,直到遇見下一處空白為止。
如果輸入的是「 cat dog sheep 」,輸出將是cat,輸出結果中沒有任何空格。
2. string的常用操作
**作用
說明s.size()
字串的大小
返回s中字元的個數 和length()等價,無\0
s[n]
取第n個字元
返回s中第n個字元的引用,位置n從0計起
s1+s2
字串的拼接
返回s1和s2連線後的結果
s.empty()
判斷字串是否為空
s為空返回true,否則返回false
s1=s2
副本替換
用s2的副本代替s1中原來的字元
s1==s2
字串比較相等
如果s1和s2中所含的字元完全一樣,則返回true,否則返回false;
對大小寫敏感
s1!=s2
字串比較不同
如果s1和s2所含字元不一樣,返回true,大小寫敏感
>, <
字串比較
利用字元在字典中的順序進行比較,且對字母的大小寫敏感
**二:
#include "stdafx.h"
#include "iostream"
#include using namespace std;
int main()
{ string s; // 預設建構函式,s為空串
string s1="my"; // 複製初始化
string s2(s1); // 用s1的乙個副本來初始化s2
string s3("value"); // 用"value"初始化s3,直接初始化
string s4(6,'w'); // 用6個字元
if(s.empty()) // 如果s為空串,則返回true,否則返回false
{ cout<
3. 和c語言中字元陣列的區別
string類定義的字串後面不帶『\0』.
**三:
#include #include using namespace std;
int main()
{ char str[6] = "hello";
//與c風格的 char 字串不同,string 型別的變數結尾沒有 '\0'
string s = "hello";
int size1,size2,len1,len2;
size1 = sizeof(str);//返回6,有'\0'
size2 = s.size();//不用sizeof,返回5,沒有'\0'
string常用的騷操作
string line 連續不斷的讀入的話 while getline cin,line 當讀入乙個不為空的字串的時候 while getline cin,line line.size 0 字串提取 line.substr 前乙個引數為起始位置,後乙個為提取的長度 字串的替換 line.replac...
String常用操作,StringBuffer。
string str new string 我們愛學習 string str1 我們不愛學習 system.out.println 計算字串長度 str.length 執行結果 計算字串長度 5 system.out.println 比較兩個字串的內容 str.equals str1 執行結果 比較...
String的常用操作方法
在string類中提供了以下的方法操作字元與字串間的轉換關係 根據字串中提供的索引找到指定位置的字元 public charcharat int index 將字串變為字元陣列 public chartochararray 將字元陣列變為字串 將全部的字元陣列變為string型別 publicstr...