如何從CString型別的字串中取出數字

2021-08-19 13:51:16 字數 1272 閱讀 9117

問題由來:今天遇到了這樣乙個問題,有乙個cstring型別的字串,其中有乙個數字,如何讓這個數字+1後,再寫回到cstring中,並且輸出

廢話少說,直接上結果,然後分析

**如下:

lresult cmaindlg::onok(word /*wnotifycode*/, word wid, hwnd /*hwndctl*/, bool& /*bhandled*/)

其實就是使用了cstring的幾個函式 find,mid。

下面是他們的具體解釋

cstring mid( int nfirst ) const;

cstring mid( int nfirst, int ncount ) const;

/*返回值:   

返回乙個包含指定範圍字元的拷貝的cstring物件。注意,這個返回的cstring物件可能是空的。   

引數:   

nfirst 此cstring物件中的要被提取的子串的第乙個字元的從零開始的索引。   

ncount 要從此cstring物件中提取的字元數。如果沒有提供這個引數,則字串的其餘部分都被提取。   

對於多位元組字符集(mbcs),ncount指的是每8位字元的數目;也就是說,在乙個多位元組字元中開始和結尾位元組被算作兩個字元。 */

int find( tchar ch ) const;

int find( lpctstr lpszsub ) const;

int find( tchar ch, int nstart ) const;

int find( lpctstr lpszsub, int nstart ) const;

// 返回此cstring物件中與需要的子字串或字元匹配的第乙個字元的從零開始的索引;

//如果沒有找到子字串或字元則返回-1

/*引數含義:

ch 要搜尋的單個字元。

lpszsub 要搜尋的子字串。   

nstart 字串中開始搜尋的字元的索引,如果是0,則是從頭開始搜尋。如果nstart不是0,則位於nstart處的字元不包括在搜尋之內。   

pstr 指向要搜尋的字串的指標*/

在遇到這種問題時,字串都是有一定的規律的,使用一定的演算法,然後再結合cstring的函式就可以解決這些問題,現在拋磚引玉,以後遇到一種情況在這改一次。 

C string和c型別字元陣列的比較

在c 中string是很方便操作的字串,支援多種算數運算和比較運算,操作起來非常靈活。string也具有一些容器的性質,可以通過迭代器對字元元素進行訪問 c型別的字元陣列有如下三種初始化方式 前兩種的初始化方式是等同的,最後一種沒有 0 char cp hello char c arr hello ...

C string型別字串的儲存方式

不知道你們有沒有看過string型別變數的成員資料,在string變數中好像真正儲存字串的是乙個叫 ptr的指標,它指向string所儲存的字串首位址。當string變數被定義時,如果未初始化,ptr就是乙個指向null的指標,而且 ptr看起來像乙個const char 型別的指標,如果它是乙個空...

C string型別字串新增字元或新的字串

string str1 i love 注意 該函式只能在字串後面新增字元 e.g.str1.push back y str str a str str abc 這種賦值方式,效率比較低 str a str abc 直接對str操作,效率高 3.1 直接新增字串 e.g.string str1 i l...