字串操作

2022-09-14 14:21:17 字數 1447 閱讀 4023

————ostrstream & istrstream類流
ostrstream實現將乙個二進位制數轉換成串的字元存於字元陣列物件中
istrstream流可以實現將乙個字串的數字字元轉換成二進位制形式存入在某種型別的物件中。

istrstream流為流物件提供了兩種建構函式,它們的原型分別是:

1.istrstream ::istrsteam(char *s)
2.istrstream ::istrstream(char *s, int n)
例:char buffer1[100] = "10 10.1";

char buffer1[100] = "10.1";

double m, n ;

int i;

istrstream str(buffer1);

str >> i >> m;

istrstream str(buffer2,2);

str >> n;

==> i = 10, m = 10.1, n = 10 

———— string.c_str()

const char * string.c_str()返回字串指標,指向當前字串中的首字元位址,其內容與本string相同;主要用於字串型別的匹配。

———— string.find() & rfind()

原型:

(1)size_t find (const string& str, size_t pos = 0) const;  //查詢物件--string類物件
(2)size_t find (const char* s, size_t pos = 0) const; //查詢物件--字串
(3)size_t find (const char* s, size_t pos, size_t n) const;  //查詢物件--字串的前n個字元
(4)size_t find (char c, size_t pos = 0) const;  //查詢物件--字元

結果:找到,返回第乙個字元的索引;否則,返回string::npos。

rfind()是從反向查詢。

例:string str = "hai/lou";

size_t split = str.rfind("/");

string first = str.substr(0,split); //first = "hai"

————size_t

size_t(size type)是一種「整型」型別,裡面儲存乙個整數,就像int, long那樣,可以加減乘除,可轉化為int並賦值給int型別的變數。這種整數用來記錄乙個大小(size),就是說「一種用來記錄大小的資料型別」。

sizeof(***)返回size_t型別, 如size_of = sizeof("adfa")。

字串操作 靠字串分割字串

字串分解函式。注意strtok比較複雜。要妥善運用!也可以不用strtok函式,但要實現字串靠字串分割比較困難!注意str指向的空間必須是可讀可寫的 如陣列或動態分配的空間 不能為字串常量的指標,因為strtok改變了其中的內容。include include 功能 將str中的字串按照elemon...

字串操作

字串操作 要了解字串操作首先要了解什麼是字串。前面已經提過,字串是乙個由零個或者多個字元組成的有限序列,既然是有限的那麼也就意味著字串存在乙個起始位置和乙個結束位置。我們以指定起始位置的方式來通知程式從該位置起向後的一段記憶體空間的內容應該解釋為字串。那麼這個字串在什麼地方結束呢?規定當遇到字元 0...

字串操作

include using namespace std int strlength char str char strcopy char str1,char str2 char strlink char str1,char str2 int main char strcopy char str1,c...