分割字符串的程序

来源:互联网 发布:人人商城源码安装教程 编辑:程序博客网 时间:2024/05/21 06:18

任意输入一个字符串,所有的单词以一个空格分割。编写程序将其中的每一个单词输出。

#include <stdio.h>#include <stdlib.h>#include <string.h>char str[100];char substr[100][100];int main(){    gets(str);    char * tmp=str;    char * start=tmp;    int i=0;    while(1){        int flag=0;        if(*tmp==' '||*tmp=='\0'){            if(*tmp=='\0')                flag=1;            strncpy(substr[i],start,(int)(tmp-start));            tmp++;            start=tmp;            i++;        }        if(flag)            break;        tmp++;    }    int j=0;    for(;j<=i;j++){        printf("%s\n",substr[j]);    }    return 0;}
由于空格和字符串结束标志都是一个单词的结束标志,因此不可以使用当前指针指向的单词是不是空来进行判断while循环的结束。