如何用C语言实现动态的字符串数组

Python035

如何用C语言实现动态的字符串数组,第1张

分成取数字与取非数字2个函数较简单。get_v()取数字, get_o()取非数字。

#include <stdio.h>

char *get_v(char *a, char *b){

int i=0

while( a[i]>='0' &&a[i]<='9') {b[i]=a[i]i++}

b[i]='\0'

strcpy(a,a+i)

return b

}

char *get_o(char *a, char *b){

int i=0

while( a[i]<'0' || a[i]>'9') {b[i]=a[i]i++}

b[i]='\0'

strcpy(a,a+i)

return b

}

int main()

{

char s[]="1234+4*5"

char b[10]

while(strlen(s)>=1){

get_v(s, b)

printf("%s\n",b)

if (strlen(s)<=0)break

get_o(s, b)

printf("%s\n",b)

}

return 0

}

#include<stdio.h>

#include<stdlib.h>

#define LENGTH 20

int main()

{

    int str_num

    scanf("%d",&str_num)

    char (*str_arr)[LENGTH] = (char(*)[LENGTH])malloc(sizeof(char)*LENGTH*str_num)

    for(int i=0i<str_numi++)

    {

        scanf("%s",str_arr[i])

    }

}