我通过读取一个在线的文件得到了一个字符串。C 是数字之间的分隔符。
3000C9.5452C5.644 ...
现在我想提取所有这些数字并将它们写入一个称为 Matrix 的双精度数组。
fgets(input_string, filesize, infile);
int matrix_size = (int) strtof(input_string, &input_end);
++input_string;
int binary_matrix_size = sizeof (double)*(matrix_size * matrix_size);
double *Matrix = malloc(binary_matrix_size);
for (int index = 0; index < (matrix_size * matrix_size); ++index) {
while (!isdigit(input_string) && input_string) {
++input_string;
}
Matrix[index] = strtod(input_string, &input_end);
input_string = input_end;
}