Преобразовать целое число в массив - PullRequest
13 голосов
/ 07 декабря 2009

Я хотел бы преобразовать целое число в массив, чтобы оно выглядело следующим образом:

int number = 123456 ;
int array[7] ;

с результатом:

array[0] = 1 
array[1] = 2
...
array[6] = 6

Ответы [ 11 ]

0 голосов
/ 07 декабря 2009

Самый простой способ, который я могу себе представить сейчас:

char array[40];
int number = 123456;

memset(array, 0x00, sizeof(array));

sprintf(array, "%d", number);

Кроме того, вы можете конвертировать каждую цифру в int, просто вычитая значение char на 0x30.

РЕДАКТИРОВАТЬ : Если это домашнее задание, учитель, вероятно, попросит вас написать программу, используя оператор%, хотя (например, 12% 10 = 2). Если это так, хорошая домашняя работа; -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...