c語言字元串數組分離,c語言數組分割

本文目錄一覽:

c語言如何從字元串數組中分離處單個字元

c語言的話,本質上來說是沒有字元串數組這概念,字元串數組就是單個字元串起來,就是說定義的時候已經分成單個字元,不用再去分離

例如,定義一個char *str = “asdf”;那麼str[0],str[1],str[2],str[3]就會分別對應asdf

如果你是要分割char *str = “a,b,c,d”,這種類型的字元串,你可以用strtok這個函數

如何用c語言分離字元串中的字母和數字並分別輸出?

把字元串存放到數組裡面,一個一個比對(循環)後輸出

判斷數字:

for (i=0;in;i++){

if ((p[i]=’0′) (p[i]=’9′))

printf();

判斷字母:

for (i=0;in;i++){

if ((p[i]=’a’) (p[i]=’Z’))

printf();

擴展資料:

通常以串的整體作為操作對象,如:在串中查找某個子串、求取一個子串、在串的某個位置上插入一個子串以及刪除一個子串等。兩個字元串相等的充要條件是:長度相等,並且各個對應位置上的字元都相等。設p、q是兩個串,求q在p中首次出現的位置的運算叫做模式匹配。串的兩種最基本的存儲方式是順序存儲方式和鏈接存儲方式。

參考資料來源:百度百科-字元串

C語言有沒有把字元串拆分為數組的函數?

直接用簡單的C++

#include iostream

#include string

#include vector

using namespace std;

//把字元串s按照字元串c進行切分得到vector_v 

vectorstring split(const string s, const string c){

vectorstring v;

int pos1=0,pos2;

while((pos2=s.find(c,pos1))!=-1){

v.push_back(s.substr(pos1, pos2-pos1));

     pos1 = pos2 + c.size();

   }

if(pos1 != s.length())

     v.push_back(s.substr(pos1));

return v;

}

int main()

{

string input=”張三$|男$|濟南$|大專學歷$|”;

vectorstring  myArray=split(input,”$|”);

for(int i=0;imyArray.size();i++){

coutmyArray[i]endl;

}

}

/*

張三

濟南

大專學歷

*/

c語言分離字元串

/************************************************************************/

/* 21chenxb’ work

2010-6-26

VC++6.0

C加加愛好者團

/************************************************************************/

#include stdio.h

void main()

{

char a[]=”$GPGGA,003235.000,2247.2020,N,11353.5878,E,1,04,2.2,104.8,M,-3.3,M,,0000*4B”;

char b[14][100];

int i=0;

int j=0;

int k=0;

while (a[i])

{

if (a[i]!=’,’)

{

b[j][k]=a[i];

k++;

}

else

{

b[j][k]=0;

j++;

k=0;

}

i++;

}

//輸出測試

for(int m=0;m14;m++)

{

printf(“%s\n”,b[m]);

}

}

時間有限,這個程序的比較死板。但是完全達到你問題中的目標。

C語言 寫一個把一個字元串分成若干個數組

void * Split(const  char * pString ,int length)

{

 char * ptr=NULL;

 int rows;//一組等寬字元串可以看做二維數組的一行,定義行數

 const char *pSrc=pString;//取原地址作為源指針

 char *pTag;//目標指針

 //分割長度小於等於0,或指針無效時,返回空指針。

 if (pString  length0 )

 {

  int len=strlen(pString);

  int cols;//列數

  rows=len/length;//字元串總長除以列數

  if (len%length0)rows++;//如果餘數非0,則行數加一

  ptr=new char[rows*(length+1)];//創建足夠的空間

  pTag=ptr;//初始化目標指針

  while (*pSrc!=’\0′)//源指針指向的值如果有效則循環

  {

   cols=strlen(pSrc);//取原指針開始的字元串長度

   if (colslength)cols=length;//如果大於分割長度則修正,否則即為餘數,就是最後一行的列數

   memcpy(pTag,pSrc,cols);//複製

   pTag+=length;//目標指針遞增一個列寬(行寬度)

   *pTag=’\0′;//填寫結束符

   pTag++;//增補一個地址

   pSrc+=cols;//源指針遞增一個列寬(行寬度)

  }

 }

 return ptr;

}

//主函數 

int _tmain(int argc, _TCHAR* argv[])

{

 char *str=”abcdefghijklmn”;

 char (*p)[4];

 p=(char (*)[4])Split(str,3);

 coutp[1]endl;

getchar();

 return 0;

}

C語言中輸入字元串,裡面有空格,怎麼根據空格把字元串分開,並存在數組裡?

程序源碼如下:

#includestdio.h

#includestring.h

int main(void)

{

char str[1000];//定義一個字元串數組

char strnew[1000];//定義一個備用字元串數組

char m[] = ” “;//定義空格變數

printf(“請輸入一串字元:”);//文字提示輸入字元串

gets(str);//輸入字元串

char *p = strtok(str,m);//取str與m的指針

printf(“%s\n”,p);  //輸出

p = strtok(NULL,m);

while(p)  //遍歷輸出

{    

printf(“%s\n”,p); //輸出字元串

p = strtok(NULL,m);  //指向下一個

}

}

程序輸出結果:

擴展資料:

C語言:輸入一個字元串放入數組裡,刪除其中的空格

#include stdio.h

#includestring.h

#define N 100

void main()                   

{

int i=0,j;

char c,str[N];

printf(“輸入字元串str:\n”);

while((c=getchar())!=’\n’)

{

str[i]=c;//輸入字元串

i++;

}

str[i]=’\0′;

for(i=0;str[i]!=’\0′;i++)

{

if(str[i]==’ ‘)

{

for(j=i+1;str[j]!=’\0′;j++)

{

str[j-1]=str[j];    

}

str[j]=’\0′;

}

else continue;

}

str[i-2]=’\0′;

printf(“去掉空格後的字元串為:\n”);

for(i=0;str[i]!=’\0′;i++)

printf(“%c”,str[i]);

printf(“\n”);

}

原創文章,作者:BRHH,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/143709.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
BRHH的頭像BRHH
上一篇 2024-10-22 23:35
下一篇 2024-10-24 15:25

相關推薦

  • Python字元串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字元串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字元串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python導入數組

    本文將為您詳細闡述Python導入數組的方法、優勢、適用場景等方面,並附上代碼示例。 一、numpy庫的使用 numpy是Python中一個強大的數學庫,其中提供了非常豐富的數學函…

    編程 2025-04-29
  • Python中將字元串轉化為浮點數

    本文將介紹在Python中將字元串轉化為浮點數的常用方法。在介紹方法之前,我們先來思考一下這個問題應該如何解決。 一、eval函數 在Python中,最簡單、最常用的將字元串轉化為…

    編程 2025-04-29
  • Python返回數組:一次性搞定多種數據類型

    Python是一種多用途的高級編程語言,具有高效性和易讀性的特點,因此被廣泛應用於數據科學、機器學習、Web開發、遊戲開發等各個領域。其中,Python返回數組也是一項非常強大的功…

    編程 2025-04-29
  • Java判斷字元串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字元串中是否存在多個指定字元: 一、字元串遍歷 字元串是Java編程中非常重要的一種數據類型。要判斷字元串中是否存在多個指定字元…

    編程 2025-04-29
  • AES加密解密演算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密演算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES演算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演著非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python學習筆記:去除字元串最後一個字元的方法

    本文將從多個方面詳細闡述如何通過Python去除字元串最後一個字元,包括使用切片、pop()、刪除、替換等方法來實現。 一、字元串切片 在Python中,可以通過字元串切片的方式來…

    編程 2025-04-29
  • Python去掉數組的中括弧

    在Python中,被中括弧包裹的數據結構是列表,列表是Python中非常常見的數據類型之一。但是,有些時候我們需要將列表展開成一維的數組,並且去掉中括弧。本文將為大家詳細介紹如何用…

    編程 2025-04-29
  • Python操作數組

    本文將從多個方面詳細介紹如何使用Python操作5個數組成的列表。 一、數組的定義 數組是一種用於存儲相同類型數據的數據結構。Python中的數組是通過列表來實現的,列表中可以存放…

    編程 2025-04-29

發表回復

登錄後才能評論