日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

strtok用法详解

發布時間:2023/12/20 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 strtok用法详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

字符串操作函數strtok用法:
char* strtok(char* src,char* split);
函數參數:
src:被分割的字符串
split:分割的標志,分割字符串
函數返回值:
成功:返回被分割出的字符串
失敗:NULL
分割字符串后原串src變成第一次分割成功后分割出的字符串。
(1)首次分割 : char* p = strtok(src,split);
(2)往后繼續分割:
char* p1 = strtok(NULL,split);
char* p2 = strtok(NULL,split);

在完整功能中的用法實例

#include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <fcntl.h> #define INFO_SIZE 128 char* getText(char *src) {if(!src){return NULL;}/*strtok用法如下:*/char *p = strtok(src,"=");p = strtok(NULL,"=");return p; }int main() {FILE* fp = NULL;fp = fopen("1.txt","r");if(!fp){return -1;}char* p = NULL;char recv[INFO_SIZE] = {0};char data[20] = {0};char *name = NULL;char *age = NULL;char *phone = NULL;char recv_next[INFO_SIZE] = {0};printf("please input :\n");fgets(data,INFO_SIZE,stdin);data[strlen(data) - 1] = '\0';if(strstr(data,"name") != NULL){p = getText(data);if(!p){return -1;}printf("p = %s\n",p);while(fgets(recv,INFO_SIZE,fp) != NULL && recv[0] != '\n'){if(strncmp(recv,p,strlen(p)) == 0 && recv[strlen(p)] == ','){name = strtok(recv,",");age = strtok(NULL,",");phone = strtok(NULL,",");printf("recv = %s\n",recv);printf("output:age = %s,phone = %s\n",age,phone);}memset(recv,0,INFO_SIZE);}}else if(strstr(data,"age") != NULL){p = getText(data);if(!p){return -1;}while(fgets(recv,INFO_SIZE,fp) != NULL && recv[0]!='\n'){strcpy(recv_next,recv);name = strtok(recv_next,",");age = strtok(NULL,",");phone = strtok(NULL,",");if(strncmp(age,p,strlen(p)) == 0 && recv[strlen(name) + 1 + strlen(age)] == ','){//if(strncmp(age,p,strlen(p)) == 0)//{name = strtok(recv,",");age = strtok(NULL,",");phone = strtok(NULL,",");printf("output : name = %s,phone = %s\n",age,phone);}memset(recv,0,INFO_SIZE);memset(recv_next,0,INFO_SIZE);} }else{return -1;}fclose(fp);return 0;} ![文件1.txt內容](https://img-blog.csdnimg.cn/2e2246365a0948f1869c66ac905f34cd.png#pic_center)

總結

以上是生活随笔為你收集整理的strtok用法详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。