溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

c++ 實現(xiàn)對字符串按字符分割源代碼

發(fā)布時間:2020-06-23 23:13:45 來源:網(wǎng)絡(luò) 閱讀:3050 作者:忘記江南 欄目:編程語言

//頭文件

#include <string>
#include <vector>

//-------------獲取按ch分割的子字符串--------------------------
std::vector<std::string> split(char* pStr, char ch)
{
std::vector<std::string> vec;
if (nullptr == pStr)
return vec;

std::string strStr(pStr);
int _off=0;
std::string::size_type sizeType;
while(true)
{
    if (_off>=strStr.length())
        break;

    sizeType=strStr.find_first_of(ch,_off);
    if (sizeType<=0)
    {
        _off=sizeType+1;
        continue;
    }
    if (sizeType==std::string::npos)
    {
        vec.push_back(strStr.substr(_off,strStr.length() - _off));
        break;
    }
    vec.push_back(strStr.substr(_off,sizeType - _off));
    _off=sizeType+1;
}
return vec;

}

//調(diào)用實例

std::vector<std::string> vecCapdu = split((char *)strCapdu.c_str(),';');
for (std::vector<std::string>::const_iterator itr=vecCapdu.cbegin();itr!=vecCapdu.cend();itr++)
{

printf("%s",itr->c_str());//迭代器輸出

}

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI