日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CString类型的头文件、CString的输出、CString的常用用法

發布時間:2025/3/15 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CString类型的头文件、CString的输出、CString的常用用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、CString類型的頭文件

?????#include <afx.h>

?

2、CString的輸出

?????CString temp="Hello!";

?????cout<<(LPCTSTR)temp<<endl;

?

3、CString的用法

CString::Compare
int Compare( LPCTSTR lpsz ) const;
返回值 字符串一樣 返回0?
?????????小于lpsz 返回-1
?????????大于lpsz 返回1
?????????區分大小字符
?????????CString s1( "abc" );
CString s2( "abd" );
ASSERT( s1.Compare( s2 ) == -1 );
ASSERT( s1.Compare( "abe" ) == -1 );

CString::CompareNoCase
int CompareNoCase( LPCTSTR lpsz ) const;
返回值 字符串一樣 返回0?
????????小于lpsz 返回-1
????????大于lpsz 返回1
????????不區分大小字符

CString::Collate
int Collate( LPCTSTR lpsz ) const;
同CString::Compare

CString::CollateNoCase
int CollateNocase( LPCTSTR lpsz ) const;
同CString::CompareNoCase

CString::CString
CString( );
CString( const CString& stringSrc );?
CString( TCHAR ch, int nRepeat = 1 );?
CString( LPCTSTR lpch, int nLength );?
CString( const unsigned char* psz );?
CString( LPCWSTR lpsz );
CString( LPCSTR lpsz );?
例子最容易說明問題
CString s1;??????????????????????
CString s2( "cat" );???????????????
CString s3 = s2;??????????????????
CString s4( s2 + " " + s3 );?????????
CString s5( 'x' );??????????????????????// s5 = "x"
CString s6( 'x', 6 );???????????????????// s6 = "xxxxxx"
CString s7((LPCSTR)ID_FILE_NEW);????????// s7 = "Create a new document"
CString city = "Philadelphia";?

CString::Delete
int Delete( int nIndex, int nCount = 1);?
返回值是被刪除前的字符串的長度
nIndex是第一個被刪除的字符,nCount是一次刪除幾個字符。根據我實驗得出的結果:當nCount>要刪除字符串的最大長度(GetCount() - nIndex)時會出錯,當nCount過大,沒有足夠的字符刪除時,此函數不執行。
例子
CString str1,str2,str3;
char a;
str1 = "nihao";
str2 = "nIhao";
int x;
// int i=(str1 == str2);???????
str1.Delete(2,3);
如果nCount(3) > GetCount() – nIndex (5-2)就會執行錯誤

CString::Empty
Void Empty( );
沒有返回值 清空操作;
例子
CString s( "abc" );
s.Empty();
ASSERT( s.GetLength( ) == 0 );

CString::Find
int Find( TCHAR ch ) const;
int Find( LPCTSTR lpszSub ) const;
int Find( TCHAR ch, int nStart ) const;
int Find( LPCTSTR lpszSub, int nStart ) const;
返回值 不匹配的話返回 -1; 索引以0 開始
????????nStar 代表以索引值nStart 的字符開始搜索 ,
即為包含以索引nStart字符后的字符串
例子
CString s( "abcdef" );
ASSERT( s.Find( 'c' ) == 2 );
ASSERT( s.Find( "de" ) == 3 );
Cstring str(“The stars are aligned”);
Ing n = str.Find('e',5);
ASSERT(n == 12)

CString::FindOneOf
int FindOneOf( LPCTSTR lpszCharSet ) const;
返回值 不匹配的話返回 -1; 索引以0 開始
??????????注意::返回此字符串中第一個在lpszCharSet中 也包括字符并且從零開始的索引值
例子
CString s( "abcdef" );
ASSERT( s.FindOneOf( "xd" ) == 3 ); // 'd' is first match.

CString::Format
void Format( LPCTSTR lpszFormat, ... );
void Format( UINT nFormatID, ... );
lpszFormat 一個格式控制字符串
nFormatID 字符串標識符
例子
????????????CString str;
Str.Format(“%d”,13);?
此時Str為13

CString::GetAt
TCHAR GetAt( int nIndex ) const;
返回標號為nIndex的字符,你可以把字符串理解為一個數組,GetAt類似于[].注意nIndex的范圍,如果不合適會有調試錯誤。

CString::GetBuffer
LPTSTR GetBuffer( int nMinBufLength );
返回值
一個指向對象的(以空字符結尾的)字符緩沖區的LPTSTR 指針。
參數
nMinBufLength
字符緩沖區的以字符數表示的最小容量。這個值不包括一個結尾的空字符的空間。
說明
此成員函數返回一個指向CString 對象的內部字符緩沖區的指針。返回的LPTSTR 不是const,因此可以允許直接修改CString 的內容。如果你使用由GetBuffer 返回的指針來改變字符串的內容,你必須在使用其它的CString 成員函數之前調用ReleaseBuffer 函數。
在調用ReleaseBuffer 之后,由GetBuffer 返回的地址也許就無效了,因為其它的CString 操作可能會導致CString 緩沖區被重新分配。如果你沒有改變此CString 的長度,則緩沖區不會被重新分配。當此CString 對象被銷毀時,其緩沖區內存將被自動釋放。
注意,如果你自己知道字符串的長度,則你不應該添加結尾的空字符。但是,當你用ReleaseBuffer 來釋放該緩沖區時,你必須指定最后的字符串長度。如果你添加了結尾的空字符, 你應該給ReleaseBuffer 的長度參數傳遞-1 ,ReleaseBuffer 將對該緩沖區執行strlen 來確定它的長度。
下面的例子說明了如何用CString::GetBuffer。
// CString::GetBuffer 例子
CString s( "abcd" );
#ifdef _DEBUG
afxDump << "CString s " << s << "\n";
#endif
LPTSTR p = s.GetBuffer( 10 );
strcpy( p, "Hello" ); // 直接訪問CString 對象。
s.ReleaseBuffer( );
#ifdef _DEBUG
afxDump << "CString s " << s << "\n";
#endif

CString的用法出處:http://www.diybl.com/course/3_program/c++/cppjs/2007918/71880.html

轉載于:https://www.cnblogs.com/PierreDelatour/archive/2011/11/12/2246601.html

總結

以上是生活随笔為你收集整理的CString类型的头文件、CString的输出、CString的常用用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 另类天堂网| 91精品在线看 | 成人亚洲精品 | 黑人巨大精品欧美黑寡妇 | 亚洲一区二区三 | 亚洲激情欧美激情 | 中文字幕最新 | 日本黄色免费网址 | 中文字幕日本人妻久久久免费 | 国产aa | 看免费毛片 | 欧美香蕉在线 | 日日干av| 欧美午夜一区 | 黄色在线视频网站 | 国产欧美激情视频 | 欧美激情免费观看 | 成年人理论片 | 鸥美毛片| 日日干夜夜操 | 日韩精品中文字幕在线 | 欧美午夜寂寞影院 | 亚洲人成电影在线播放 | 一二三四视频社区在线 | 呦呦网| 一区二区三区xxx | 国产精品久久久午夜夜伦鲁鲁 | 久久蜜桃av一区二区天堂 | re久久| 老熟妇高潮一区二区高清视频 | 超碰666| 亚洲狼人色 | 特黄aaaaaaaaa毛片免费视频 | 疯狂揉花蒂控制高潮h | 欧美人体视频一区二区三区 | 最近更新中文字幕 | 伦理片一区二区三区 | 亚洲一二三 | 亚洲熟乱 | 欧美91看片特黄aaaa | mm131国产精品| 久久精品免费 | 国产a级黄色片 | 国产成人综合一区二区三区 | 久久久一二三区 | 国产农村妇女毛片精品久久麻豆 | 成人免费黄色av | 欧美日韩中文一区 | 国产精品免费一区二区三区四区 | 激情的网站 | 国产精品成av人在线视午夜片 | 中文字幕 日本 | 99久久99久久久精品棕色圆 | 一本视频 | 电影91久久久 | 91九色丨porny丨国产jk | 青青草香蕉 | 久久精品久久精品久久精品 | 日韩福利社 | 欧美日韩国产成人 | 成人美女免费网站视频 | 18做爰免费视频网站 | 国产精品2018| 久久乐国产精品 | 免费成人精品 | 骚婷婷| 色欲久久久天天天精品综合网 | 日韩一级片中文字幕 | 香蕉国产在线视频 | 美女性高潮视频 | 午夜亚洲AV永久无码精品蜜芽 | 国产精品1234区 | 中文字幕精品视频 | 日韩三级欧美 | 大波大乳videos巨大 | 好吊色在线视频 | 亚洲蜜桃在线 | 日韩特级片 | 亚洲色图13p | a v免费视频| 俺也去五月婷婷 | 久久五月网| 中国黄色大片 | av剧情在线| 五月色婷婷综合 | 午夜精品久久久内射近拍高清 | 久久久精品蜜桃 | 日本青青草 | 精品理论片 | 亚洲午夜精品一区二区三区他趣 | 成人免费看视频 | 九色porny自拍视频在线播放 | 性一交一乱一色一免费无遮挡 | 国产制服91一区二区三区制服 | 欧美一区二区三区四 | 国产黄色片在线 | 亚洲色图图片 | 住在隔壁的她动漫免费观看全集下载 | 黄色片免费网站 |