欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

c++字符串char[]數(shù)組分割split問題

 更新時(shí)間:2023年09月09日 14:10:59   作者:叫我小二吧  
這篇文章主要介紹了c++字符串char[]數(shù)組分割split問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

c++字符串char[]數(shù)組分割split

使用c++提供的strtok進(jìn)行字符串?dāng)?shù)組分割,話不多說,

上代碼:

#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main()
{
    vector<char*> res_split;//存儲分割后的字符串
    char *name = "camera 10_2020821_1_23.bmp";
    char image_name[100];
    strcpy(image_name, name);
    const char split[] = "_";
    char* res = strtok(image_name, split);//image_name必須為char[]
    while (res != NULL)
    {
        res_split.push_back(res);
        cout <<res << endl;
        res = strtok(NULL, split);
     }
    cout << res_split.at(2) << endl;
    system("pause");
    return 0;
}

輸出結(jié)果:

c++中的Split函數(shù)(字符串自動(dòng)分割)

函數(shù)原型

C/C++中的Split函數(shù)是strtok(),其函數(shù)原型如下:

char * strtok (char * str, const char * delimiters);

函數(shù)說明

strtok()用來將字符串分割成一個(gè)個(gè)片段。參數(shù)str指向欲分割的字符串,參數(shù)delimiters則為分割字符串,當(dāng)strtok()在參數(shù)str的字符串中發(fā)現(xiàn)到參數(shù)delimiters的分割字符時(shí)則會(huì)將該字符改為‘\0’字符。

在第一次調(diào)用時(shí),strtok()必需給予參數(shù)str字符串,往后的調(diào)用則將參數(shù)str設(shè)置成NULL。

每次調(diào)用成功則返回下一個(gè)分割后的字符串指針。

返回值返回下一個(gè)分割后的字符串指針,如果已無從分割則返回NULL。

代碼示例

#include <string>
#include "stdio.h"
int main ()
{
    char str[] ="a,b,c,d*e";
    const char * split = ",";
    char * p;
    p = strtok (str,split);
    while(p!=NULL) {
        printf ("%s\n",p);
        p = strtok(NULL,split);
    } 
    return 0;
}

本例中,實(shí)現(xiàn)對字符串’a,b,c,d*e”用逗號(,)來作界定符對字符串進(jìn)行分割。

輸出結(jié)果將如下所示:




d*e 

因?yàn)閐elimiters支持多個(gè)分割符, 我們將本示例中的語句行

const char * split = “,”;

改成

const char * split = “,“; //用逗號(,)和星號()對字符串進(jìn)行分割

這樣輸出結(jié)果將如下:





e

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • c++ 預(yù)處理之正整型實(shí)現(xiàn)方法

    c++ 預(yù)處理之正整型實(shí)現(xiàn)方法

    這篇文章主要介紹了c++ 預(yù)處理之正整型實(shí)現(xiàn)方法,需要的朋友可以參考下
    2017-07-07
  • OpenGL實(shí)現(xiàn)3D空間中移動(dòng)圖像

    OpenGL實(shí)現(xiàn)3D空間中移動(dòng)圖像

    這篇文章主要為大家詳細(xì)介紹了OpenGL實(shí)現(xiàn)3D空間中移動(dòng)圖像,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • C語言指針和數(shù)組深入探究使用方法

    C語言指針和數(shù)組深入探究使用方法

    在C語言和C++等語言中,數(shù)組元素全為指針變量的數(shù)組稱為指針數(shù)組,指針數(shù)組中的元素都必須具有相同的存儲類型、指向相同數(shù)據(jù)類型的指針變量。指針數(shù)組比較適合用來指向若干個(gè)字符串,使字符串處理更加方便、靈活
    2022-08-08
  • C++利用SQLite實(shí)現(xiàn)命令行工具

    C++利用SQLite實(shí)現(xiàn)命令行工具

    這篇文章主要為大家詳細(xì)介紹了一個(gè)基于 C++、SQLite 和 Boost 庫的簡單交互式數(shù)據(jù)庫操作 Shell,該 Shell 允許用戶通過命令行輸入執(zhí)行各種數(shù)據(jù)庫操作,感興趣的可以了解下
    2023-11-11
  • C語言中的內(nèi)存泄露 怎樣避免與檢測

    C語言中的內(nèi)存泄露 怎樣避免與檢測

    堆經(jīng)常會(huì)出現(xiàn)兩種類型的問題:1.釋放或改寫仍在使用的內(nèi)存(稱為:“內(nèi)存損壞”)。2.未釋放不再使用的內(nèi)存(稱為:“內(nèi)存泄露”)。這是最難被調(diào)試發(fā)現(xiàn)的問題之一
    2013-09-09
  • 利用C語言的Cairo圖形庫繪制太極圖實(shí)例教程

    利用C語言的Cairo圖形庫繪制太極圖實(shí)例教程

    這幾天都在研究Cairo圖形庫,這是一個(gè)開源跨平臺的圖形庫,相對于OpenGL來說更容易上手使用。這篇文章是利用C語言的Cairo圖形庫繪制了一個(gè)太極圖,對大家學(xué)習(xí)Cairo圖形庫具有一定的參考借鑒價(jià)值,下面來一起看看吧。
    2016-12-12
  • C語言驅(qū)動(dòng)開發(fā)之內(nèi)核通過PEB獲取進(jìn)程參數(shù)

    C語言驅(qū)動(dòng)開發(fā)之內(nèi)核通過PEB獲取進(jìn)程參數(shù)

    PEB結(jié)構(gòu)(Process Envirorment Block Structure)其中文名是進(jìn)程環(huán)境塊信息。本文將通過PEB實(shí)現(xiàn)獲取進(jìn)程參數(shù),感興趣的小伙伴可以了解一下
    2022-10-10
  • C語言實(shí)現(xiàn)掃雷小游戲簡單版

    C語言實(shí)現(xiàn)掃雷小游戲簡單版

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)掃雷小游戲簡單版,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • 5分鐘內(nèi)了解C語言的指針

    5分鐘內(nèi)了解C語言的指針

    這篇文章主要介紹了5分鐘內(nèi)了解C語言的指針,本文講解了指針、引用和取值、void指針、NULL指針和未初始化指針、指針和數(shù)組等內(nèi)容,需要的朋友可以參考下
    2015-01-01
  • 一文搞懂C++中繼承的概念與使用

    一文搞懂C++中繼承的概念與使用

    我們都知道面向?qū)ο笳Z言的三大特點(diǎn)是:**封裝,繼承,多態(tài)。**之前在類和對象部分,我們提到了C++中的封裝,那么今天呢,我們來學(xué)習(xí)一下C++中的繼承
    2022-07-07

最新評論