Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/23: Рейтинг темы: голосов - 23, средняя оценка - 4.61
2 / 2 / 1
Регистрация: 19.09.2012
Сообщений: 106

Работа с Memo и массивом Builder 6 C++

14.12.2012, 04:39. Показов 4435. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем как можно сделать так: Я ввожу данные в мемо(Memo1), затем жму на кнопку(Button1) и все эти данные заносятся в массив(char *s). Пишет ошибку, когда я пытался это сделать, может я чего то не понимаю? Ошибка связанная что-то с Antistring. Прошу вашей помощи люди, желательно чтобы объяснили понятно и как можно более развернуто т.к. хочется научится. Заранее благодарю.

Добавлено через 56 секунд
Данные это текст на Русском языке.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.12.2012, 04:39
Ответы с готовыми решениями:

Работа с Memo и Массивом
Здравствуйте Господа программисты!!! Не могли бы вы помочь мне с составлением задачи. Условие: Записать числа (в Memo от 1..10 с помощью...

программка с массивом на C++ Builder....
Дан массив из 10 вещеста. чисел. Максимальный элемент массива увеличить в 2 раза, а минимальный элемент уменьшить в 2 раза. Вывести...

C++ Builder Не работает программа с массивом
Помогите пожалуйста, с программой на C++ Не работает обращение к массиву XOGame Вот фрагмент программы : int XOGame; int...

10
2 / 2 / 1
Регистрация: 19.09.2012
Сообщений: 106
14.12.2012, 10:31  [ТС]
Спасибо большое, статейки не видел просто, буду учить.
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
14.12.2012, 11:01
Чтобы перенести в массив char текст из строки, нужно применять суффикс c_str(). Например:__
C++
1
2
3
4
    AnsiString str = "Ñòðîêà â Ìýìî...";
    char *massiv;
    massiv = str ;  //  çäåñü îøèáêà
    massiv = str.c_str();
0
2 / 2 / 1
Регистрация: 19.09.2012
Сообщений: 106
14.12.2012, 11:08  [ТС]
Цитата Сообщение от nick42 Посмотреть сообщение
Чтобы перенести в массив char текст из строки, нужно применять суффикс c_str(). Например:__
C++
1
2
3
4
    AnsiString str = "Ñòðîêà â Ìýìî...";
    char *massiv;
    massiv = str ;  //  çäåñü îøèáêà
    massiv = str.c_str();
А можно вопрос, вот massiv это наш массив, а str.c_str() - это мы что сделали конкретно можно, пожалуйста подробно об этом. Я не совсем понимаю преобразование данных. Из чего во что мы преобразовали?

Добавлено через 3 минуты
C++
1
    AnsiString str = "Ñòðîêà â Ìýìî...";
А и ещё тут написано строка в мемо, а если я сам ввожу текст в мемо и по кнопке хочу чтобы он занесся в массив??? Тогда этот код не подходит получается?
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
14.12.2012, 11:23
Цитата Сообщение от Eliceyka Посмотреть сообщение
Тогда этот код не подходит получается?
- не получается. Для фундаментального самообразования вам Samrisbe дал ссылки... .
Строка - это ж понятие; это и Edit->Text, и Button->Caption, и Memo->Lines->Strings[index] ... (вот только не надо здесь спрашивать, что это: index).
0
2 / 2 / 1
Регистрация: 19.09.2012
Сообщений: 106
14.12.2012, 11:33  [ТС]
ИЗвиняюсь за такие, на ваш взгляд глупые вопросы, но я учусь и мне любопытно все, а за то что написали спасибо большое, очень полезная информация дальше все в моих руках и в ссылках выше)))))) Спасибо всем скажу кто соизволил ответить мне) Кстати индекс я понял о чем речь) в том случае это номер линии в мемо)
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
14.12.2012, 11:56
Да ничего, пожалуйста. Я - практик и сам многого не понимаю; то, что как-то понимаю, пытаюсь объяснить. Так, допустим, с моей точки зрения строка - это последовательность символов, ограниченная непечатаемым символом (меньше 0х20) - "перевод строки" 0А, "возврат каретки" 0D (исключение - табулятор 08), нулевой. А список - это последовательность строк, заканчивающаяся нулевым символом. Но вот оказывается, что Memo->Text (список по существу) можно впихнуть в AnsiString. И когда вплотную орудуешь с AnsiString и массивом char - даже не используя юникод - тут тоже иногда столько непоняток всплывает...! А ведь по существу - и то, и другое всего лишь последовательность символов. Но вмешивается компилятор (он же интерпретатор) - и белое становится если не черным, то как минимум серым... .
0
return (true);
 Аватар для mimicria
1977 / 1112 / 221
Регистрация: 19.04.2011
Сообщений: 2,346
14.12.2012, 12:07
На всякий случай =)
Цитата Сообщение от nick42 Посмотреть сообщение
C++
1
2
3
char *massiv; 
massiv = str ; // здесь ошибка 
massiv = str.c_str();// А ЗДЕСЬ ТИПА ОШИБКИ НЕТ?
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
14.12.2012, 12:11
... я ж не в Студии работаю. А старый добрый Билдер 5-й версии такую запись понимает.
0
 Аватар для BRcr
4043 / 2333 / 292
Регистрация: 03.02.2011
Сообщений: 5,066
Записей в блоге: 10
14.12.2012, 18:54
Цитата Сообщение от nick42 Посмотреть сообщение
Но вот оказывается, что Memo->Text (список по существу) можно впихнуть в AnsiString.
Это не список, а строчка, собранная из строк внутреннего списка Lines, так что никакой мистики.

Добавлено через 6 часов 28 минут
Цитата Сообщение от Eliceyka Посмотреть сообщение
Ошибка связанная что-то с Antistring.
Даже возникло желание написать такой класс, очень уж звучит...

С мемо в массив так можно:
C++
1
2
3
4
5
6
7
8
9
#include <memory>
#include <strsafe.h>
//...
 
    unsigned long size_in_chars, size_in_bytes;
    std::auto_ptr <TCHAR> arr( new TCHAR[size_in_chars = memo1->Text.Length( ) + 1] );
    size_in_bytes = size_in_chars* sizeof( TCHAR );
    StringCbCopy( arr.get( ), size_in_bytes, memo1->Text.c_str( ) );
    ShowMessage( arr.get( ) );
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.12.2012, 18:54
Помогаю со студенческими работами здесь

Прозрачный Memo в C++ Builder, переделка из delphi
Очень нужен прозрачный TMemo, чтоб видеть все, что под ним. Пытался переделать дельфийский код Transparent Memo из Transparent Components...

Вывести информацию в алфавитном порядке в Memo на c++builder
вывести информацию в алфавитном порядке в Memo на c++builder?????

Memo->Lines[1] - что за тип? костыль? C++ Builder
Пояснение: bus03_eightschools.time - int Lines - &quot;06:30&quot; Как записать эту строчку правильно: bus03_eightschools.time =...

Метод Save для компонента memo c++ builder
Здравствуйте, уважаемые программисты! Сам только-только начал учиться программировать. Пишу текстовый редактор в с++ builder. Нужно...

Как с помощью С++ Builder`a вывести указанный файл в Memo
Я никак не смог с помощью Memo1-&gt;Lines-&gt;LoadFromFile(&quot;text.txt&quot;); вывести текст на мемо1, помогите!


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru