簡體   English   中英

使用strtok在C中解析字符串並將其存儲在數組中

[英]Parsing string in C using strtok and store in array

我正在使用strtok解析字符串。 我正在解析的字符串可能有兩種可能性,例如“ 10,5”“ 10” 當我解析“ 10,5”時,我可以成功地將其放入數組,但是當我具有“ 10”時 ,我有1個項目10,另一個項目是數組中的一個大整數。

這是我的代碼

   int array[2];
   char *p = strtok (argv[1], ",");
   while (p != NULL)
   {
       array[n++] = atoi(p);
       p = strtok (NULL, ",");
   }

關於如何處理這個有什么建議嗎?

您尚未初始化數組,因此,如果循環僅找到一個數字,則您會在第二個元素中得到所有未初始化的垃圾。

int array[2] = {0, 0};

將兩個元素都初始化為0 如果輸入只有10 ,則數組將包含10, 0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM