Я печатаю четыре переменные в конце моей программы.Печать переменной, связанной с другой печатью
int n = 0;
for (n = 0; n < count; n++)
printf("sorted array:%d\n ", array[n]);
int last = array[0];
int unique = 1;
int i;
for (i = 1; i < n; i++) {
if (array[i] != last) {
last = array[i];
unique++;
}
}
char *start;
int c;
int value;
int step;
c = 0;
start = line;
while (sscanf(start, "%d%n", array + c, &step) == 1) {
start += step;
c += 1;
}
value = 1;
int j;
for (j = 1; j < c; ++j) {
value += (array[j] - array[j - 1]) ? 1 : 0;
}
printf("integers: %d ", count);
}
/* Close the file */
fclose(fp);
return 0;
}
Единственный способ, которым я могу напечатать правильное значение переменной unique
, если я держу printf("sorted array:%d\n", array[n]);
. Тем не менее, я использовал этот оператор printf
только для целей тестирования и не хочу, чтобы он печатался при выполнении моей программы.
Если я удалю for(n = 0; n < count; n++)
и printf("sorted array:%d\n", array[n]);
, значение unique
всегда неверно.
Я никогда раньше не видел ничего подобного. Любые предложения относительно того, почему printf
одной переменной привязаны к другой?
Ничего себе .. спасибо. Я ценю это. Я чувствую себя немного глупым. (: Еще раз спасибо. Я приму свой ответ, когда настанет время. –
Невнятные ошибки часто очень трудно обнаружить сами, но легко для других. [Получите резиновую утку] (https://en.wikipedia.org/wiki/Rubber_duck_debugging), он может сэкономить вам драгоценное время :-) – Magix
Ха-ха! У меня есть на самом деле ... мне придется использовать его. Еще раз спасибо и за смех! (: –