Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Разбить AnsiString !

1.8K
18 октября 2002 года
DanilovYV
41 / / 14.10.2002
есть AnsiString такого типа - "22!33!A!B!"
надо 4-ем переменным присвоить соответственно
p=22
q=33
w=A
z=B

как ????
295
18 октября 2002 года
gray_k
356 / / 20.12.1999
Цитата:
Originally posted by DanilovYV
есть AnsiString такого типа - "22!33!A!B!"
надо 4-ем переменным присвоить соответственно
p=22
q=33
w=A
z=B

как ????


надо строку AnsiString преобразоватьв char. Делается это так:
AnsiSting str1;
str1.c_str() - тип char.
А потом работаешь с массивом. Можно вытащить любой символ.

1.8K
18 октября 2002 года
DanilovYV
41 / / 14.10.2002
Цитата:
Originally posted by gray_k

надо строку AnsiString преобразоватьв char. Делается это так:
AnsiSting str1;
str1.c_str() - тип char.
А потом работаешь с массивом. Можно вытащить любой символ.



спасибо - попробую!

2.0K
18 октября 2002 года
D. Lex
45 / / 09.10.2002
AnsiString s = "22!33!A!B!";
for (int k=0;k<4;++k){
AnsiString ss=s->SubString(1,s->Pos("!")-1);
s->Delete(1,ss->Length()+1);
switch(k){
case 0: p=ss->ToInt(); break;
case 1: q=ss->ToInt(); break;
case 2: w=ss; break;
case 3: z=ss; break;
}
}
1.8K
18 октября 2002 года
DanilovYV
41 / / 14.10.2002
Цитата:
Originally posted by D. Lex
AnsiString s = "22!33!A!B!";
for (int k=0;k<4;++k){
AnsiString ss=s->SubString(1,s->Pos("!")-1);
s->Delete(1,ss->Length()+1);
switch(k){
case 0: p=ss->ToInt(); break;
case 1: q=ss->ToInt(); break;
case 2: w=ss; break;
case 3: z=ss; break;
}
}



красивое решение ! благодарю !

1.8K
18 октября 2002 года
DanilovYV
41 / / 14.10.2002
Цитата:
Originally posted by D. Lex
AnsiString s = "22!33!A!B!";
for (int k=0;k<4;++k){
AnsiString ss=s->SubString(1,s->Pos("!")-1);
s->Delete(1,ss->Length()+1);
switch(k){
case 0: p=ss->ToInt(); break;
case 1: q=ss->ToInt(); break;
case 2: w=ss; break;
case 3: z=ss; break;
}
}



красивое решение ! благодарю !

293
20 октября 2002 года
SEDEGOFF
586 / / 06.10.2002
Эх вы двоешки есть специальная функция
String h = "123!454!546";
String a1,a2,a3;
a1 = strtok(h.c_str(),"!");
a2 = strtok(NULL, "!");
a3 = strtok(NULL, "!");
Вот теперь перегоняей строку в нужный тип и пользуйся
442
25 октября 2002 года
HexoGenus
121 / / 20.03.2000
Цитата:
Originally posted by SEDEGOFF
Эх вы двоешки есть специальная функция
String h = "123!454!546";
String a1,a2,a3;
a1 = strtok(h.c_str(),"!");
a2 = strtok(NULL, "!");
a3 = strtok(NULL, "!");
Вот теперь перегоняей строку в нужный тип и пользуйся



Хммммм..... не знал я такой функции, да и невозможно их все знать...
Зато тоже могу предложить свой вариантик...
Не знаю как с точки зрения рациональности но любому преподу (если тебе нужно сдавать это как задание) должно понравится :)

String a="22!33!A!B!",p,q,w,z;
String * s[4]={&p,&q,&w,&z};
int j=0;
for (int i=1; i<=a.Length(); i++) if (String(a)!="!") *s[j]=*s[j]+a; else j++;

Ну как? :D

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог