Разбить AnsiString !
надо 4-ем переменным присвоить соответственно
p=22
q=33
w=A
z=B
как ????
Цитата:
Originally posted by DanilovYV
есть AnsiString такого типа - "22!33!A!B!"
надо 4-ем переменным присвоить соответственно
p=22
q=33
w=A
z=B
как ????
есть AnsiString такого типа - "22!33!A!B!"
надо 4-ем переменным присвоить соответственно
p=22
q=33
w=A
z=B
как ????
надо строку AnsiString преобразоватьв char. Делается это так:
AnsiSting str1;
str1.c_str() - тип char.
А потом работаешь с массивом. Можно вытащить любой символ.
Цитата:
Originally posted by gray_k
надо строку AnsiString преобразоватьв char. Делается это так:
AnsiSting str1;
str1.c_str() - тип char.
А потом работаешь с массивом. Можно вытащить любой символ.
надо строку AnsiString преобразоватьв char. Делается это так:
AnsiSting str1;
str1.c_str() - тип char.
А потом работаешь с массивом. Можно вытащить любой символ.
спасибо - попробую!
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;
}
}
Цитата:
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;
}
}
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;
}
}
красивое решение ! благодарю !
Цитата:
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;
}
}
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;
}
}
красивое решение ! благодарю !
String h = "123!454!546";
String a1,a2,a3;
a1 = strtok(h.c_str(),"!");
a2 = strtok(NULL, "!");
a3 = strtok(NULL, "!");
Вот теперь перегоняей строку в нужный тип и пользуйся
Цитата:
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 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