我正在使用带有-std=c89
开关的 Linux gcc 对 C 进行编程。我有一个存储字符串的变量,例如:
10, 1, 2, 3
我在上面的字符串中显示了 4 个整数,但实际数字并不提前知道。如何将这些值提取到整数数组中?例如,我们可以使用上限 8 来分配内存。但实际的整数个数总是 <= 8。
目前,我正在执行以下操作:
sscanf(csv_variable, "%i,%i,%i,%i,%i,%i,%i,%i",
&int_variable[0],
&int_variable[1],
&int_variable[2],
&int_variable[3],
&int_variable[4],
&int_variable[5],
&int_variable[6],
&int_variable[7]);
但这适用于具有 8 个整数的输入字符串。希望以某种方式在循环内完成解析,以便它可以容纳任何数字,例如最多 8 个可能的整数(以便它适用于提供少于 8 个整数的情况)。