С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/21: Рейтинг темы: голосов - 21, средняя оценка - 4.95
0 / 0 / 0
Регистрация: 21.06.2016
Сообщений: 6

Как перевести Ansistring в char[256]

21.06.2016, 15:55. Показов 3899. Ответов 10

Студворк — интернет-сервис помощи студентам
При считывании с EDIT текста в AnsiString нужно перевести его в char[256] или как нибудь вызывать к каждому символу по отдельности для того что-бы потом перевести их в int
подскажите как это сделать.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.06.2016, 15:55
Ответы с готовыми решениями:

Как перевести из AnsiString в char?
Помогите, пожалуйста... Например если я пишу: val=Edit1->Text; Как перевести из AnsiString в char? Именно в char, а не в *char При...

Как перевести текст из AnsiString (в формате UTF8) в AnsiString формата Windows-1251?
Поиск по форуму не решил текущую проблему: 1. Есть текст в формате UTF-8 в величине: AnsiString qw; Вопрос: 2. Как перевести текст в...

Как преобразовать AnsiString в char?
Подскажите пожалуйста как можно преобразовать AnsiString в char

10
11 / 11 / 9
Регистрация: 26.08.2011
Сообщений: 177
21.06.2016, 15:59
C++
1
2
3
4
 char *d = new char[256];
    String m = Edit1->Text;
 
    d = m.c_str();
можно еще так попробовать:
C++
1
2
AnsiString m = Edit1->Text;
int i = StrToInt(m[...]);
1
0 / 0 / 0
Регистрация: 21.06.2016
Сообщений: 6
21.06.2016, 16:15  [ТС]
А можно как-то получить номер символа в таблице ASCII в отдельной переменной ?
на подобии этого
C++
1
2
3
4
5
6
7
8
float asc(char x)
{
int M;
M=(int)x;
return M;
}
 int M[256];
M[i]=asc(A[i]);
0
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
21.06.2016, 16:17
MrMagno, вы сами-то поняли что написали в этом коде ? Цикл же не до конца сделан
0
11 / 11 / 9
Регистрация: 26.08.2011
Сообщений: 177
21.06.2016, 16:20
Можно. Просто присвоить числовой переменной символ:
C++
1
int i = m[1];
0
0 / 0 / 0
Регистрация: 21.06.2016
Сообщений: 6
21.06.2016, 16:24  [ТС]
крч , недавно я наговнокодил этот "шедевр" который работает в консольном режиме , и теперь я хочу его перевести в Aplication , и проблема в том что я не могу перевести с Ansistring в Char A[256]
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
//----------------------------------------------------------------
#pragma argsused
asc(char x) //Перевод из символьного типа в числоовой (ASCII)
{
int M;
M=(int)x;
return M;
}
 
 
 
 
 
void main()
{
SetConsoleOutputCP(1251); //Русский язык
SetConsoleCP(1251);
 
    int k , c , l , i=0;
    char str[256];
    char A[256];
    int B[256];
    int M[256];
 
 
 
 
 cout<<"Введите ваше сообщение :"<<endl;
 cin>>str;
 
 k=strlen(str);                         //определение длины предложения
 cout<<"Длина вашего сообщения:"<<k<<endl;
 
cout<<"Повторите ввод вашего сообщения"<<endl;
for (i=0;i<k;i++)
 cin>>A[i];                             //Ввод сообщения в определенный масив
 
for(i=0;i<k;i++)
  M[i]=asc(A[i]);                       //перевод из char в int
 
 
 cout<<"Ведите 1 ключ"<<endl; //ввод 1 ключа
  cin>>c;
 
for(i=0;i<k;i+=2)                       //сложение симвлоа и 1 ключа
   B[i]=M[i]+c;
 
 
 cout<<"Ведите 2 ключ"<<endl; //ввод 2ключа
 cin>>l;
 
for(i=1;i<k;i+=2)                       //сложение симвлоа и 2 ключа
   B[i]=M[i]+l;
 
ofstream f1("DECODES.txt");             //запись симвлолв в файл
for(i=0;i<k;i++)
   f1<<B[i]<<endl;
   f1<<"________________________________________________\n";
   f1<<"|Длина:"<<k<<"|1 ключ:"<<c<<"|2 ключ:"<<l<<"|";
 f1.close();
cout<<"Выполеннно!";
getch();
}
//---------------------------------------------------------------------------
0
11 / 11 / 9
Регистрация: 26.08.2011
Сообщений: 177
21.06.2016, 16:29
Цитата Сообщение от MrMagno Посмотреть сообщение
крч , недавно я наговнокодил этот "шедевр" который работает в консольном режиме , и теперь я хочу его перевести в Aplication , и проблема в том что я не могу перевести с Ansistring в Char A[256]
Что надо в итоге получить?
0
0 / 0 / 0
Регистрация: 21.06.2016
Сообщений: 6
21.06.2016, 16:36  [ТС]
Это Кодер, который конвертирует буквы в символы из табл. ASCII, в итоге нужно конвертировать из AnsiString в char A[256] после чего через ту функцию пользователя перевести их в ASCII
0
11 / 11 / 9
Регистрация: 26.08.2011
Сообщений: 177
21.06.2016, 16:42
Лучший ответ Сообщение было отмечено MrMagno как решение

Решение

Цитата Сообщение от MrMagno Посмотреть сообщение
Это Кодер
Я туго по жаре соображаю, но это типа шифр цезаря что ли?
Тогда вот вариант шифрования:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void __fastcall TForm1::Button1Click(TObject *Sender)
{
        int PPP;
        AnsiString m = Edit1->Text;
        int k  = StrToInt(Edit2->Text);   
        for (int i = 1;i<=m.Length();i++)
                {
                        PPP = ((unsigned char)m[i] + k);
                        if (PPP >= 256) 
                               PPP=PPP-255;
                        m[ i ] = (char)PPP;
}
        Edit3->Text = m;
}
1
0 / 0 / 0
Регистрация: 21.06.2016
Сообщений: 6
21.06.2016, 17:45  [ТС]
Благодарствую , это приблизительно то что мне нужно.

Добавлено через 54 минуты
Проблема в том , что мои не многочисленные знания в отросли Апликейшна не особо мне помогают в кодировании , как это
дешифровать?(ну , код)
0
11 / 11 / 9
Регистрация: 26.08.2011
Сообщений: 177
21.06.2016, 19:48
Да все тоже самое только не прибавляем k, а отнимаем (смещение назад)
вот тут
C++
1
PPP = ((unsigned char)m[i] + k);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.06.2016, 19:48
Помогаю со студенческими работами здесь

Как преобразовать AnsiString в unsigned char*
Всем привет. Мне нужно переделать чужой код: char szPincode = {0}; sprintf(szPincode, &quot;1234&quot;); ...

Как сконвертировать AnsiString (wchar_t) to char * ?
ЕстьAnsiString Astr; Char *Str;Подскажите пожалуйста, как преобразовать строку Astr в Str ?

AnsiString в Char
Как строку AnsiString перенести в массив char?

Копирование из char* в AnsiString
Имеется AnsiString S, char* C (большого размера массив), и int L - длинна слова в массиве C. Надо записать в строку S из строки C слово...

Преобразование AnsiString в char
Есть следующий код: AnsiString s; char *str; //strcpy(str,s.c_str()); fprintf (f,s.c_str()); В...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru