Помощник
Здравствуйте, гость ( Вход | Регистрация )
|
|
6:04:2008, 12:08
|
|
Новенький ![]() Группа: Программист Сообщений: 6 Регистрация: 6:04:2008 Пользователь №: 16 412 Репутация: 0
|
Писал в первом семестре программу для работы с длинной арифметикой под консолью. Сейчас надо её переделать под форму. И возникла проблема: В Edit1->Text есть строка из n чисел(n гдет до 1000) мои алгоритмы на входе используют интовые массивы=> из поля текст считать строку в AnsiString затем её переделать в массив char а потом из char в массив int. и после действий над интовым массивом опять чтобы его вывести надо из массива int переделать его в char а потом в строку, чтоб её в Edit1->Text присвоить. Вот вопрос как это лучше сделать ? использовать для каждого символа atoi() или что-то ещё? или может можно как-то из текстового поля сразу считывать int ( пишу в с++ builder 6)
ps: sry если гдет обсуждалось но в гугле инфы много но как-то всё не систематизировано и не всегда понятно. |
|
Сообщение
#1
|
|
![]() |
|
|
7:04:2008, 07:22
|
|
Божественный ![]() ![]() ![]() ![]() ![]() Группа: Модеры Сообщений: 1 817 Регистрация: 4:09:2006 Из: Минск Пользователь №: 6 316 Специализация: C++ Репутация: 31
|
Edit1->Text.c_str() уже вернет указатель на массив char. Преобразование из char* в AnsiString явно тоже делать не обязательно. По поводу преобразования строки в массив целых сложно подсказать, т.к. непонятно какие данные вводятся в Edit
|
|
Сообщение
#2
|
|
|
|
7:04:2008, 11:32
|
|
Новенький ![]() Группа: Программист Сообщений: 6 Регистрация: 6:04:2008 Пользователь №: 16 412 Репутация: 0
|
thx
в Edit вводятся 100 и боле значные числа(целые) |
|
Сообщение
#3
|
|
|
|
7:04:2008, 11:40
|
|
Божественный ![]() ![]() ![]() ![]() ![]() Группа: Модеры Сообщений: 1 817 Регистрация: 4:09:2006 Из: Минск Пользователь №: 6 316 Специализация: C++ Репутация: 31
|
Тогда, ИМХО, проще всего пробежаться по массиву char* и вычитать из каждого ASCII кода 30h для перевода char в int. Только останется организовать проверку на ввод чисел в Edit
|
|
Сообщение
#4
|
|
![]() |
|
Текстовая версия | Сейчас: 17:05:2008 - 11:41 |