1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Глюк ли, Substring класса String

Тема в разделе "С и С++", создана пользователем R_2, 4 май 2006.

Статус темы:
Закрыта.
  1. R_2

    R_2 Гость

    Репутация:
    0
    При соединении приходит строка str вида file#filename#filezise#.

    Начинаю ее разбирать.
    Код:
    if (Rtext.SubString(0, Rtext.Pos("#")-1) == "file") ....
    По идее конструкция
    Код:
    Rtext.SubString(0, Rtext.Pos("#")-1)
    должна выдать file, а нифига подобного. Вывожу результат просто в Memo или в Edit - ничего нет в строке.

    Написал свои функции для получения первого вхождения символа в строку и выделение подстроки начиная с i по j элемент. Все через char*. Но при возвращении строки в конце два "левых" символа, хотя размер промежуточного массива типа char*, помоему, верный. Определяю так:
    Код:
    char *ret = new char[count - index]; 
    // count - по какой, index - с какого
    Как справиться с этой проблемой?
     
  2. Sensei

    Sensei Гость

    Репутация:
    0
    Всегда выделяй памяти для "Char" на один байт больше, а именно

    Код:
    	char *mySubString = new char[count - index + 1]; 
    // --- тут типа копирование твое строки в mySubString 
    ......
    // --- Строки всегда должны заканчиваться "Нулем"
    mySubString[count - index] = 0;
    // --- вконце не забывай делать (конечно если нада) --
    delete [] mySubString;


    ------
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей