Создать массив целых чисел, используя цифры в качестве размера
Я пытаюсь создать массив символов в C, чтобы заполнить его цифрами int, но int может иметь любое количество цифр.
Я использую созданную функцию под названиемgetDigits(int num)
, который возвращает количество цифр, которое имеет int.
char buffer[getDigits(number)] = "";
snprintf(buffer, sizeof(buffer),"%d",number);
но когда я компилирую с использованием gcc, он возвращает:
error: variable-sized object may not be initialized
Я перепробовал все. Когда я объявляю это какchar fileSizeStr[5] = "";
, оно работает. Я вижу, что проблема возрастает, когда я пытаюсь динамически объявить размер буфера, но мне бы очень хотелось узнать, есть ли способ добиться этого.