我需要使用以下输入在C中创建2D动态数组:
3(spacja)21(spacja)11(enter)
4(spacja)5(spacja)125(spacja)45(enter)
1(spacja)9(spacja)4(enter)
(enter)
空白行必须结束输入,但是我无法使其工作。
for (int m = 0;; ++m) {
a = (float **) realloc(a, (m + 1) * sizeof(*a));
a[m]=NULL;
i = 0;
while ((count = scanf("%f%c", &tmp, &follow)) > 0) {
if (count == 2 && (isspace(follow) || follow == '\n')) {
a[m] = (float*) realloc(a[m], (i + 1) * sizeof(float));
a[m][i] = tmp;
i++;
if (follow == '\n') {
n[m] = i;
break;
}
} else {
printf("Wprowadzono bledne dane\n"); // Wrong data has been entered
EXIT_SUCCESS;
}
}
}