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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

蛋疼的strtok函数

發布時間:2025/3/15 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 蛋疼的strtok函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

解一道題的時候要用到字符串分割,但是c標準庫里沒有類似java,python中的split()函數啊,自己寫的話要用到strtok()這個函數,這可真是個讓人蛋疼的函數。下面說為什么。

給出我的原始代碼

1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 5 int split(char **arr,char *str,const char *del) 6 { 7 int count =0; 8 char *s = strtok(str,del); 9 while (s) 10 { 11 *arr++ = s; 12 s = strtok(NULL,del); 13 count++; 14 15 } 16 return count; 17 } 18 int main() 19 { 20 //printf("Hello world!\n"); 21 char *str = "wo shi lian wen long"; 22 char *save[10] ;//= {}; 23 memset(save,0,sizeof(save)); 24    char buff[20];
strcpy(buff,str);
25 const char *del = " "; 26 int i = split(save,buff,del); 27 int j; 28 29 for (j=0;j<i;j++) 30 { 31 printf("%s\n",save[j]); 32 } 33 34 return 0; 35 }

gcc編譯器顯示我在調用strtok()的時候出現段錯誤。

百思不得騎姐,最終在stackoverflow上找到了答案。

http://stackoverflow.com/questions/8957829/strtok-segmentation-fault

原來是因為我在調用strtok的時候會改變字符串的字面值,但這是不被允許的。因為"wo shi lian wen long"是常量字符串,被存儲在只讀空間中,str是個可以讀寫的指針,用非常量字符指針指向常量字符串本身在邏輯上就是錯誤的,對常量字符串進行讀寫操作(即應用于strtok())造成了實際錯誤。我的代碼中給出了改正的方法,strcpy(buff,str),因為buff是個數組,str指向的常量字符串存儲在數組中,而數組是在數據區儲存,所以可以對數組內的數據進行讀寫。按照同樣的思路,char buff[] = str;也可以改正錯誤。

想要改寫指針指向的空間,就要保證指針指向的是可寫的空間,強行改寫只讀空間是不鼓勵的。

轉載于:https://www.cnblogs.com/lianwl/p/3205159.html

總結

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

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

主站蜘蛛池模板: 97超碰免费 | 亚洲第一看片 | 美女网站视频在线观看 | 欧日韩在线视频 | 人人干在线 | 黄色av网站免费 | 国产精品一区一区三区 | 人妻一区二区三区 | 久久网中文字幕 | 亚洲av色区一区二区三区 | 激情五月综合 | 国产农村妇女精品一区 | 91精品成人 | 午夜影院a | 久久精品一区二区国产 | 亚洲性欧美 | 激情文学亚洲色图 | 影音先锋国产在线 | www.蜜臀av.com | 男女免费看 | 91大尺度 | 亚洲天堂2021av | 天天综合一区 | 精品午夜一区二区 | 91热爆在线| 天堂av手机版 | 日韩欧美中文字幕一区二区三区 | 国产av一区二区不卡 | 黄网免费视频 | 先锋av资源网 | 中国av毛片| 97福利| 欧美天天影院 | 粉嫩av网 | 精品国产成人av | 日本妇女毛茸茸 | 欧美在线亚洲 | 女仆裸体打屁屁羞羞免费 | 97视频资源 | h网站免费在线观看 | 嫦娥性艳史bd | 日韩美女少妇 | 国产精品久久久久久久久久久久久 | 91在线观看免费高清完整版在线观看 | 欧美精品色哟哟 | 丁香婷婷综合激情五月色 | 天天爽夜夜爽夜夜爽 | 丰满熟妇人妻av无码区 | 蜜桃99视频一区二区三区 | 欧美三级小说 | 亚洲另类天堂 | 69国产精品视频 | 熟女俱乐部五十路六十路av | 福利视频h | 无码人妻一区二区三区av | www.亚洲一区 | 亚洲综合激情五月久久 | 国内视频精品 | 国产精品中文字幕在线 | 尤物网站在线播放 | 中文资源在线播放 | 国产 欧美 精品 | 久久最新免费视频 | 先锋影音av在线 | 精品色 | 中文在线字幕免费观 | 国产一级二级三级在线 | 日韩一区二区三区在线免费观看 | 四虎国产精品永久在线国在线 | 久久超| 国产操操操| 欧美日韩国产中文 | 夜夜草影院 | av猫咪| 日韩一级片av | 久久久久久久久久久av | 青春草在线视频免费观看 | 欧美经典一区 | 黄色片视频免费观看 | xxxx毛片 | 亚洲aaaaaaa| 中文字幕偷拍 | 国产乱码精品一区二区三 | 香蕉久久久久久久av网站 | 国产高清一区二区 | 欧美13p| 久久久久久久久久亚洲 | 久久久久女 | 波多野结衣1区2区3区 | 在线看黄免费 | 欧美精品一区二 | 久久久久久蜜桃一区二区 | 岛国av在线免费 | 欧美乱妇狂野欧美在线视频 | 免费av日韩 | 欧美在线一区二区三区 | 99re6在线精品视频免费播放 | 六月丁香激情 | 免费无遮挡在线观看视频网站 |