2016-08-06 2 views
-4

Я хочу хранить положительное целое число до 10^500000 в строке.Как хранить огромное количество в строке C?

Но я не знаю, что я должен писать о размере строки.

char in[?????]; 

Просто так.

Я попытался написать что-то вроде этого.

char in[sizeof(long double)]; 

Но это не сработает.

+1

Просто 'символ в [500002]'? (не забудьте выделить место для завершения нулевого символа, когда вы хотите иметь дело с * C-string *) – MikeCAT

+1

@MikeCAT OP хочет 10^500000 –

+0

это будет зависеть от базы, которую вы будете использовать. – MikeCAT

ответ

1

Если вы хотите сохранить длинные десятичные числа в виде строк, вам понадобится цифра (без каламбура), сколько у них (базовых 10) цифр. В вашем случае 10^500000 имеет 500 001 цифр, поэтому вам понадобится строка символов длиной 500,002, чтобы включить завершающий '\0'.

char in[500002];, если вы знаете, как долго номера заранее ...

Смежные вопросы