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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

【C 语言】二级指针案例 ( 字符串切割 | 返回 二维数组 作为结果 )

發布時間:2025/6/17 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【C 语言】二级指针案例 ( 字符串切割 | 返回 二维数组 作为结果 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、二級指針案例 ( 返回二維數組 )
  • 二、完整代碼示例





一、二級指針案例 ( 返回二維數組 )



將 “12,ab,345,” 字符串 以 逗號 “,” 分割 , 放到二維數組中 , 并傳出結果 ;


觀察上述字符串 , 以 逗號 “,” 分割為 333 部分 , 最長的字符串有 333 個實際字符 , 加上 ‘\0’ 結尾 , 最長的字符串設置 444 字節即可 , 因此這里設置的二維數組為 :

char array[3][4];

核心邏輯 :

  • ① 查找字符 :222 個指針都指向 “12,ab,345,” 字符串 , 查找逗號字符 , 將其中一個指針指向第一次出現的 逗號 字符位置 , 然后將 222 個指針之間的字符拷貝出來 ;
  • ② 重置變量 : 重新設置 222 個指針的位置 , 指向上一次逗號字符的后面第一個字符 , 然后又開始重新查找逗號字符 , 繼續執行 ① 中的操作 ;
do{// 字符串中, 查找 字符 ','// 找到后 , 返回 逗號 第一次出現的指針p1 = strchr(p1, c);if (p1 != NULL){// 將 p1 指針 與 p2 指針之間的 字符拷貝出來// 這就是分割后的字符串if (p1 - p2 > 0){// 將 p2 后的 p1 - p2 個字符// 拷貝到數組中strncpy(array[tmpcount], p2, p1 - p2);// 實際的字符拷貝完成后 , 再將 '\0' 字符拷貝過去array[tmpcount][p1-p2] = '\0';// 拷貝完成后 , 字符tmpcount ++;// p2 和 p1 都設置為 指向 逗號后面字符// 重新開始查找 逗號 并分割p2 = p1 = p1 + 1;}}else{// 如果 p1 為 NULL , 說明沒有找到逗號字符 , 退出循環即可break;}} while (*p1 != '\0');



二、完整代碼示例



完整代碼示例 :

#include <stdio.h> #include <stdlib.h> #include <string.h>/*** @brief split_str 分割字符串* @param str 要分割的字符串* @param c 分割依據* @param array 將分割結果寫入該數組* @param count 分割了多少份* @return*/ int split_str(const char *str, char c, char array[3][4], int *count) {// 用于接收 str 參數char *p1 = NULL, *p2 = NULL;// 臨時變量int tmpcount = 0;// p1 , p2 初始化p1 = str;p2 = str;do{// 字符串中, 查找 字符 ','// 找到后 , 返回 逗號 第一次出現的指針p1 = strchr(p1, c);if (p1 != NULL){// 將 p1 指針 與 p2 指針之間的 字符拷貝出來// 這就是分割后的字符串if (p1 - p2 > 0){// 將 p2 后的 p1 - p2 個字符// 拷貝到數組中strncpy(array[tmpcount], p2, p1 - p2);// 實際的字符拷貝完成后 , 再將 '\0' 字符拷貝過去array[tmpcount][p1-p2] = '\0';// 拷貝完成后 , 字符tmpcount ++;// p2 和 p1 都設置為 指向 逗號后面字符// 重新開始查找 逗號 并分割p2 = p1 = p1 + 1;}}else{// 如果 p1 為 NULL , 說明沒有找到逗號字符 , 退出循環即可break;}} while (*p1!='\0');*count = tmpcount;return 0; }/*** @brief 主函數入口* @return*/ int main() {// 存放返回值int ret = 0;// 字符串分割的份數int count = 4;// 按照逗號分割char split = ',';// 字符串char *str = "12,ab,345,";// 循環控制變量int i = 0;// 存放分割結果char array[3][4];// 分割字符串ret = split_str(str, split, array, &count);// split_str 方法執行失敗if(ret != 0){printf("split error!\n");return ret;}// 打印分割結果for(i = 0; i < count; i++){printf("%s\n", array[i]);}// 命令行不要退出system("pause");return 0; }

執行結果 :

總結

以上是生活随笔為你收集整理的【C 语言】二级指针案例 ( 字符串切割 | 返回 二维数组 作为结果 )的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 岛国精品在线播放 | 黄片一区二区 | 亚洲一区二区三区四区在线播放 | 91精品国产aⅴ一区 黄色a网 | 深夜福利一区二区三区 | 波多野吉衣一区二区三区 | 97超视频在线观看 | 一级特黄av | 久久久久18| 日日操夜夜操狠狠操 | 久久精品无码一区二区三区 | 本田岬av | 亚洲国产精品久久AV | 日本成人午夜视频 | 五月网婷婷 | 免费不卡av在线 | 高跟av| 亚洲精品字幕 | 成年人在线免费观看网站 | 国产一级黄色录像 | 日本高清xxxx | 色哟哟视频网站 | 精品66| 午夜剧场欧美 | 久久色播| 毛片导航 | 亚洲欧美网址 | 国产一级做a爱片久久毛片a | 久久精品黄 | 欧美黄色片视频 | 蜜桃中文字幕 | 国产精品久久久久久久久久久久久久久久久 | 亚洲自拍偷拍欧美 | 男女午夜激情 | 国产一区二区三区视频免费在线观看 | 久久青| 五月天视频 | 亚洲美女自拍 | 少妇被又大又粗又爽毛片久久黑人 | 久久国产视频播放 | 天堂在线精品视频 | 天天视频天天爽 | 91九色国产视频 | 日韩视频专区 | 国产稀缺精品盗摄盗拍 | 亚洲一区二区国产 | 成人五区 | 欧美视频免费在线观看 | 男女扒开双腿猛进入爽爽免费 | av一区免费 | 午夜影院性 | 色天天色 | 久草久草 | 欧美激情视频网址 | 美女又爽又黄视频 | 亚洲精品中文字幕成人片 | 精品一区亚洲 | 久久久久久久久久久久 | 丰满人妻翻云覆雨呻吟视频 | 草草影院网址 | 波多野结衣在线免费观看视频 | 免费无码不卡视频在线观看 | av导航网站 | 日韩av免费网站 | 欧美 日韩 精品 | 音影先锋av资源 | 欧美三级网站 | 一级a毛片免费观看久久精品 | 日本公妇乱淫免费视频一区三区 | 日本韩国在线 | juliaann精品艳妇hd | 91免费观看入口 | 人人干人人澡 | 亚色成人 | 亚洲精品乱码久久久久99 | 神马伦理视频 | 久久国产精品99久久人人澡 | 国产精品18久久久久久无码 | 特黄一区二区 | 亚洲国产日韩在线观看 | xxsm.com| 欧美午夜精品久久久久免费视 | 性猛交xxxx| 亚洲国产一区在线观看 | 成人在线观看www | 野花成人免费视频 | 国产美女视频网站 | 久久久久久一级片 | 成人开心网 | 国产精品久久久久久久久久久久午夜片 | 今天高清视频在线观看视频 | 91不卡在线 | 91av国产视频 | 少妇饥渴放荡91麻豆 | 国产精品免费一区二区区 | 欧美日韩加勒比 | www.久久久久.com | 精品婷婷色一区二区三区蜜桃 | 久久国内精品 |