VC 中字串比較和查詢
常用字串函式
1. 字串比較函式
//比較兩個字串是否相同
int StrCmp(LPCTSTR lpStr1,LPCTSTR lpStr2);
int StrCmpN(LPCTSTR lpStr1,LPCTSTR lpStr2,int nChar);
int strcmp( const char *string1, const char *string2 );
int wcscmp( const wchar_t *string1, const wchar_t *string2 );
int CompareString(LCID Locale, DWORD dwCmpFlags, LPCTSTR lpString1, int cchCount1, LPCTSTR lpString2, int cchCount2);
2. 計算字串長度
HRESULT StringCchLength( LPCTSTR psz,size_t cchMax,size_t *pcch); //replacement for strlen
size_t strlen( const char *string );
size_t wcslen( const wchar_t *string );
3. 字串賦值函式
HRESULT StringCchCopy(LPTSTR pszDest,size_t cchDest,LPCTSTR pszSrc); //replacement for strcpy
HRESULT StringCchCopyN(LPTSTR pszDest,size_t cchDest,LPCTSTR pszSrc,size_t cchSrc); //replacement for strncpy
LPTSTR StrCpy(LPTSTR psz1,LPCTSTR psz2); //存在安全問題
LPTSTR StrCpyN(LPTSTR psz1,LPCTSTR psz2,int cchMax); //存在安全問題
char *strcpy( char *strDestination, const char *strSource );
wchar_t *wcscpy( wchar_t *strDestination, const wchar_t *strSource );
char *strncpy( char *strDest, const char *strSource, size_t count );
wchar_t *wcsncpy( wchar_t*strDest, const wchar_t *strSource, size_t count );
4. 字串連線函式
HRESULT StringCchCat( LPTSTR pszDest,size_t cchDest,LPCTSTR pszSrc); //replacement for strcat
HRESULT StringCchCatN( LPTSTR pszDest,size_t cchDest,LPCTSTR pszSrc,size_t cchMaxAppend); //replacement for strncat
LPTSTR StrCat( LPTSTR psz1,LPCTSTR psz2); //存在安全問題
LPTSTR StrNCat( LPTSTR pszFront,LPCTSTR pszBack,int cchMax); //存在安全問題
char *strcat( char *strDestination, const char *strSource );
wchar_t *wcscat( wchar_t *strDestination, const wchar_t *strSource );
char *strncat( char *strDest, const char *strSource, size_t count );
wchar_t *wcsncat( wchar_t *strDest, const wchar_t *strSource, size_t count );
5. 字元查詢函式
//查詢字串中指定字元第一次出現的位置
LPTSTR StrChr( LPCTSTR lpStart,TCHAR wMatch); //區分大小寫
char *strchr( const char *string, int c );
wchar_t *wcschr( const wchar_t *string, wchar_t c );
LPTSTR StrChrI( LPCTSTR lpStart,TCHAR wMatch); //不區分大小寫
//查詢字串中指定字元最後一次出現的位置
LPTSTR StrRChr( LPCTSTR lpStart,LPCTSTR lpEnd,TCHAR wMatch); //區分大小寫
char *strrchr( const char*string, int c );
wchar *wcsrchr( const wchar_t *string, int c );
LPTSTR StrRChrI( LPCTSTR lpStart,LPCTSTR lpEnd,TCHAR wMatch); //不區分大小寫
*注 StrRChr()函式可以通過StrChr()函式和while迴圈來實現。
補充:
查詢字串:
_tcsstr(........)
字串轉化為double型數字
_tcstod( const char *nptr, char **endptr )
字串轉化為double型整數(只取整數部分,不取小數)Convert strings to a long-integer value.
_tcstoul ( const char *nptr, char **endptr, int base )
_tcstol ( const char *nptr, char **endptr, int base )
取子字串
Extracts a substring of length nCount characters from this CStringT object, starting at position iFirst (zero-based).
CStringT Mid(
int iFirst,
int nCount
) const;
CStringT Mid(
int iFirst
) const;
example:
//typedef CStringT < TCHAR, StrTraitATL < TCHAR > > CAtlString;
CAtlString s( _T("abcdef") );
_ASSERT( s.Mid( 2, 3 ) == _T("cde") );
1. 字串比較函式
//比較兩個字串是否相同
int StrCmp(LPCTSTR lpStr1,LPCTSTR lpStr2);
int StrCmpN(LPCTSTR lpStr1,LPCTSTR lpStr2,int nChar);
int strcmp( const char *string1, const char *string2 );
int wcscmp( const wchar_t *string1, const wchar_t *string2 );
int CompareString(LCID Locale, DWORD dwCmpFlags, LPCTSTR lpString1, int cchCount1, LPCTSTR lpString2, int cchCount2);
2. 計算字串長度
HRESULT StringCchLength( LPCTSTR psz,size_t cchMax,size_t *pcch); //replacement for strlen
size_t strlen( const char *string );
size_t wcslen( const wchar_t *string );
3. 字串賦值函式
HRESULT StringCchCopy(LPTSTR pszDest,size_t cchDest,LPCTSTR pszSrc); //replacement for strcpy
HRESULT StringCchCopyN(LPTSTR pszDest,size_t cchDest,LPCTSTR pszSrc,size_t cchSrc); //replacement for strncpy
LPTSTR StrCpy(LPTSTR psz1,LPCTSTR psz2); //存在安全問題
LPTSTR StrCpyN(LPTSTR psz1,LPCTSTR psz2,int cchMax); //存在安全問題
char *strcpy( char *strDestination, const char *strSource );
wchar_t *wcscpy( wchar_t *strDestination, const wchar_t *strSource );
char *strncpy( char *strDest, const char *strSource, size_t count );
wchar_t *wcsncpy( wchar_t*strDest, const wchar_t *strSource, size_t count );
4. 字串連線函式
HRESULT StringCchCat( LPTSTR pszDest,size_t cchDest,LPCTSTR pszSrc); //replacement for strcat
HRESULT StringCchCatN( LPTSTR pszDest,size_t cchDest,LPCTSTR pszSrc,size_t cchMaxAppend); //replacement for strncat
LPTSTR StrCat( LPTSTR psz1,LPCTSTR psz2); //存在安全問題
LPTSTR StrNCat( LPTSTR pszFront,LPCTSTR pszBack,int cchMax); //存在安全問題
char *strcat( char *strDestination, const char *strSource );
wchar_t *wcscat( wchar_t *strDestination, const wchar_t *strSource );
char *strncat( char *strDest, const char *strSource, size_t count );
wchar_t *wcsncat( wchar_t *strDest, const wchar_t *strSource, size_t count );
5. 字元查詢函式
//查詢字串中指定字元第一次出現的位置
LPTSTR StrChr( LPCTSTR lpStart,TCHAR wMatch); //區分大小寫
char *strchr( const char *string, int c );
wchar_t *wcschr( const wchar_t *string, wchar_t c );
LPTSTR StrChrI( LPCTSTR lpStart,TCHAR wMatch); //不區分大小寫
//查詢字串中指定字元最後一次出現的位置
LPTSTR StrRChr( LPCTSTR lpStart,LPCTSTR lpEnd,TCHAR wMatch); //區分大小寫
char *strrchr( const char*string, int c );
wchar *wcsrchr( const wchar_t *string, int c );
LPTSTR StrRChrI( LPCTSTR lpStart,LPCTSTR lpEnd,TCHAR wMatch); //不區分大小寫
*注 StrRChr()函式可以通過StrChr()函式和while迴圈來實現。
補充:
查詢字串:
_tcsstr(........)
字串轉化為double型數字
_tcstod( const char *nptr, char **endptr )
字串轉化為double型整數(只取整數部分,不取小數)Convert strings to a long-integer value.
_tcstoul ( const char *nptr, char **endptr, int base )
_tcstol ( const char *nptr, char **endptr, int base )
取子字串
Extracts a substring of length nCount characters from this CStringT object, starting at position iFirst (zero-based).
CStringT Mid(
int iFirst,
int nCount
) const;
CStringT Mid(
int iFirst
) const;
example:
//typedef CStringT < TCHAR, StrTraitATL < TCHAR > > CAtlString;
CAtlString s( _T("abcdef") );
_ASSERT( s.Mid( 2, 3 ) == _T("cde") );
相關文章
- mysql timestamp比較查詢MySql
- Java™ 教程(比較字串和字串的部分)Java字串
- 字串比較字串
- Java中的字串操作(比較String,StringBuiler和StringBuffer)Java字串UI
- JAVA中字串比較equals()和equalsIgnoreCase()的區別Java字串
- 字串大小寫轉換和字串的比較字串
- 字串-簡單字串比較字串
- PHP比較字串PHP字串
- 【實測】Python 和 C++ 下字串查詢的速度對比PythonC++字串
- python字串比較大小Python字串
- 比較爽的導航查詢 功能 - SqlSugar ORMSqlSugarORM
- 探討一個比較複雜的查詢
- Linuxvivim查詢和替換字串命令Linux字串
- 字串拼接運算比較字串
- 字串查詢(字串雜湊)字串
- BST查詢結構與折半查詢方法的實現與實驗比較
- python3中怎麼比較字串是否相等Python字串
- Python字串string的查詢和替換Python字串
- python怎麼查詢字串中是否包含某個字串Python字串
- Java 中 Comparable 和 Comparator 比較Java
- 字串比較的常用函式字串函式
- Java 字串比較、拼接問題Java字串
- Java字串建立方式比較Java字串
- 使用String. localeCompare比較字串字串
- WEBAPI單據查詢介面提示比較符67錯誤WebAPI
- KImysql timestamp比較查詢遇到的坑及解決ehsMySql
- 同一張表的兩個欄位比較查詢
- js 深比較和淺比較JS
- c++map 查詢元素和list查詢元素速度對比C++
- linux下查詢字串Linux字串
- Elasticsearch中的Term查詢和全文查詢Elasticsearch
- 批量插入 1 萬條資料,DB 查詢構造器和原生 SQL 效能比較SQL
- powershell中的where和foreach比較
- Mysql中的Datetime和Timestamp比較MySql
- 844. 比較含退格的字串字串
- Laravel同時接收路由引數和查詢字串中的引數Laravel路由字串
- 第二章 :查詢與排序-------2.18題目講解_在有空字串中的有序字串陣列中查詢排序字串陣列
- Oracle date 型別比較和String比較Oracle型別
- 報表連 hive,資料量比較大,怎麼分頁查詢?Hive