Консультация № 21978
09.06.2005, 16:41
0.00 руб.
0 3 3

Здравствуйте Эксперты, хотелось бы узнать :
как из допустим непостоянной переменной удалить первые 3 символа .. и последние 6 символов
то есть : char myVar= "this is test char**";
и чтобы получилось к приверу myVar= "s is test"
Ну вобщем чтобы не светилиь первые три и последные шесть : )

Обсуждение

Неизвестный
09.06.2005, 16:51
общий
это ответ
Здравствуйте, ДимооН :)!
Например, перевести в AnsiString и использовать функцию SubString

Приложение:
AnsiString str="this is test char**";str=str.SubString(4,str.Length()-3);str=str.SubString(0,str.Length()-6);// в str необходимый результат
Неизвестный
09.06.2005, 17:16
общий
это ответ
Здравствуйте, ДимооН :)!
Дк просто все. Только там не char myVar, а char* myVar, т.к. тип char содержит только 1 байт, т.е. символ, а не строку. А char* - указатель на начало последовательности байтов типа char. Как говорится, почувствуй разницу. А отсюда и вывод, берешь каждый символ по его индексу в строке и склеиваешь.
Неизвестный
10.06.2005, 16:41
общий
это ответ
Привет. Извини, сейчас сессия, так что лазить в книге искать ф-ю времени нету. Вообще, создай свою ф-ю для обрезки. Входными параметрами будут переменная с текстом, кол-во символов удаляемых с начала, с конца. В теле ф-ии в буферную строку записывай с позиции i+([кол-во символов удаляемых с начала]-1) по i-([кол-во символов удаляемых с конца]-1). Затем:
return <буферную строку>;
Удачи, разбирайся, времени и сил не жалей.
И купи себе книгу н-р: Полный справочник по С++ 4-е издание, Герберт Шилдт. Денег не жалей.
Форма ответа