【发布时间】:2017-10-23 21:14:16
【问题描述】:
我有一个由索引和值组成的不定数量“对”的字符数组,用分号分隔。每个索引与其值之间用逗号分隔。
例子:
char srt[50] = "1,3; 2,4; 0,-2; 3,11";
("index1, value1; index2, value2; ...")
我想将 char 数组转换为 2d int 数组,如下所示:
int num[4][2] = {{1,3}, {2,4}, {0,-2}, {3,11}};
怎么样?
【问题讨论】:
-
你需要解析这个字符串。这里不容易。
-
您的代码中存在溢出。让它
str[21] -
使用
strtok_r或strtok和strchr。然后使用strtol。 -
或
strtok和sscanf(str, "%d,%d")...
标签: c arrays multidimensional-array