C语言 |
您所在的位置:网站首页 › c语言获取字符串第几个字符 › C语言 |
提取字符串中的特定部分的字符串
提取字符串中的特定部分的字符串,这句话是什么意思呢? 比如: //现在有这么一串字符串 char string1[ ] = "hello world , i love the word"; //我们现在只想要第一个单词,提取第一个单词后的结果为: char string2[ ] = "hello";那么,我们怎么做,可以取出第一个单词呢? 有些同学肯定该说了,“hello” 和 “world” 之间存在空格 “ ”,可以循环复制string1的内容,直到检测到空格便停止、退出、打印。 确实哈,这是一种最为常见的提取方式,也是我下面要贴出的代码形式。 咱们废话少说,代码见真知。 #include #include char Keywords[50]; char arrybuff[50]; void ExtractKeywords(char *mixer_message) { int i = 0; while(*mixer_message != ' ') { Keywords[i]= *mixer_message; i++; mixer_message ++; } Keywords[i+1]='\0'; printf("Keywords = %s\n",Keywords); } void PrintfKeywords(char **str) { if(str) { printf("str = %s %s %s\n",*str,*(str+1),*(str+2)); } strcpy(arrybuff, *str); printf("arrybuff = %s\n",arrybuff); ExtractKeywords(arrybuff); } int main(int argc, char **argv) { if(argc if(strcmp(*argv, "-e") == 0) { argv ++; PrintfKeywords(argv); } if(*argv) argv ++; } return 0; }编译结果如下: PS C:\Users\Yangyang\Desktop\24 audio test> gcc 1.c -o out PS C:\Users\Yangyang\Desktop\24 audio test> PS C:\Users\Yangyang\Desktop\24 audio test> PS C:\Users\Yangyang\Desktop\24 audio test> .\out.exe -e "hello world , I love the word." str = hello world , I love the word. (null) -e arrybuff = hello world , I love the word. Keywords = hello PS C:\Users\Yangyang\Desktop\24 audio test> |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |