Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
xam max
3 / 3 / 0
Регистрация: 27.09.2009
Сообщений: 200
#1

Странный поиск - C++

20.07.2012, 13:49. Просмотров 323. Ответов 2
Метки нет (Все метки)

как то странно работает функция find вот кусок кода:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
switch (count)
    {
    case 1:
        bblock=data.find("\"",1);
        if (bblock!=string::npos)
        {
            eblock=data.find("\"",bblock+1);
            if (eblock!=string::npos)
            {
                name.append(data,bblock,eblock-bblock);
            }
        }
        break;
в дата содержится строка вида ""Объект1"{" так вот если вызывать find("\"") то все работает но в итоге в name имеем ""Объект1" а хотелось бы иметь "Объект1", что то я не понимаю синтаксис find , помогите разобраться?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.07.2012, 13:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Странный поиск (C++):

Странный цикл for С++ - C++
Добрый день, ув. форумчане! Перехожу сейчас с Делфи на С++ и разбираюсь в сложнястях синтаксиса С++. Непонятно, что означает такая...

Странный калькулятор - C++
Привет, помогите пожалуйста исправить калькулятор. Когда ставлю знаки "-" или "+", выполняется умножение. #include <iostream> using...

Странный вывод - C++
#include <iostream> #include "conio.h" typedef const double* (*p_fun)(const double *, int); const double * f1(const double av, int n)...

Странный цикл for - C++
А есть ли в природе компиляторы, которые пропускают вот такой код: array<int, 3> arr = {9, 8, 7}; cout << "Array size = " <<...

Странный конструктор - C++
class Int { private: int intez; public: Int():intez(0){} Int(int...

Странный код - C++
Почему такой код верен time_t start, end; start = time(NULL); if (start == (time_t) - 1) { cout << "Time is...

2
DiffEreD
1431 / 768 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
20.07.2012, 18:46 #2
Ну подправьте немного код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
size_t bblock;
size_t eblock;
string name;
string data = "q\"wueryeufhj\"d";
bblock = data.find("\"",0);
if (bblock != string::npos)
{
    eblock=data.find("\"",bblock+1);
    if (eblock!=string::npos)
        name.append(data,++bblock,eblock-bblock);
}
cout<<name<<endl;
0
xam max
3 / 3 / 0
Регистрация: 27.09.2009
Сообщений: 200
20.07.2012, 19:06  [ТС] #3
Да, сам накосячил, но разобрался, теперь все работает
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.07.2012, 19:06
Привет! Вот еще темы с ответами:

Странный вывод - C++
Написал код. Не обращайте внимания, что он странный и не нужный, просто начали изучать классы) так вот, ввожу 2 числа они и должны...

Странный sprintf - C++
Структура, ее получение и вывод: struct User { int unk1; int unk2; int UserType; int unk3; int unk4; int Id; int...

Странный суп - C++
Рецепт странного супа выглядит следующим образом: Возьмем четырехзначные десятичные натуральные числа и удалим из них простые числа....

Очень странный баг - C++
Вообщем такая история. Программировал в Visual studio, залез в чужую память и после этого не могу правильно считать данные из текстовых...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru