Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
 Аватар для hahanov
1 / 1 / 0
Регистрация: 16.07.2014
Сообщений: 30

Поиск подстроки между заданными символами

03.08.2014, 21:27. Показов 1658. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Написал код на C++, он ищет символы между символами введёнными в Edit и ".txt" . Всё вроде бы работает,но он ищет символы всего лишь один раз...
Наверное всё легко и просто (да и код простой), однако найти ошибку я не могу...
В чём проблема почему не ищет второй раз?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
char slova[1000];
int d=0;
AnsiString log0=Edit1->Text;  // Введённое в Edit1 == "bnv243.txt bnv355.txt" 
 char* log00=log0.c_str();
  AnsiString log7=Edit2->Text; // Введённое в Edit2 == "bnv"
 char* log77=log7.c_str();
 size_t i;
 size_t g;
 char *pos2;
 char *pos;
 int mon=0;
    for(;;){
 
   pos=strstr(log00,log77);
    if (pos!=NULL){
      i=pos-log00;
       for(;;){
       slova[d]=log00[i];
       log00[i]=0;
       d++;             
       i++;
      pos2=strstr(slova,".txt");
       if(pos2!=NULL){
       g=pos2-slova;
       slova[g]=0;
       g++;
       slova[g]=0;
       g++;
       slova[g]=0;
       g++;
       slova[g]=0;
 
       break;
       }
       }
       Memo1->Text=Memo1->Text+slova;
 
 
    }
    else break;
    }
RAD Studio XE6-> C++ Builder -> VCL Forms Application
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.08.2014, 21:27
Ответы с готовыми решениями:

Удалить символы расположенные между двумя заданными символами
Подскажите пожалуйста , какой нужно использовать код , что бы удалить в строке символы после определенного символа, и остановить удаление ,...

Функция удаления символов заключенных между двумя заданными символами
Составить программу обработки массива символов с помощью указателей, которая вводит текст из произвольного количества строк, а затем...

поиск подстроки между разделителями
нужна помощь :) есть строка " 00.00 Name: TEXT' name...] " мне нужно получить из этой строки TEXT искал в интернете,...

4
 Аватар для Lynatik001
48 / 40 / 15
Регистрация: 28.09.2012
Сообщений: 818
04.08.2014, 00:35
Пошаговое выполнение сделай . Не вникал в код но может из за этого break; ?)
0
 Аватар для hahanov
1 / 1 / 0
Регистрация: 16.07.2014
Сообщений: 30
04.08.2014, 01:00  [ТС]
Lynatik001, нет if (pos!=NULL) выполняется, а потом ничего не происходит...

Добавлено через 7 минут
Строка
C++
1
pos=strstr(log00,log77);
выполняется два раза (цикл идёт).
0
Модератор
Эксперт С++
 Аватар для zss
13773 / 10966 / 6491
Регистрация: 18.12.2011
Сообщений: 29,244
04.08.2014, 09:13
C++
1
2
3
4
5
6
7
// при первом проходе здесь d равно нулю
for(;;){
       slova[d]=log00[i];// переписали одну букву, остальное мусор
       log00[i]=0;
       d++;             
       i++;
      pos2=strstr(slova,".txt"); // и что будет искаться в этом мусоре?
0
 Аватар для hahanov
1 / 1 / 0
Регистрация: 16.07.2014
Сообщений: 30
04.08.2014, 11:11  [ТС]
Да d равно нулю при первом проходе, при втором не должно быть нулю иначе будет перезапись... так и должно быть.
Почему мусор?
В массиве slova будет искаться ".txt" после чего найденные символы .txt сотрутся, далее произойдёт: остановка второго цикла,
Продолжение первого цикла, проверка массива:есть ли символы введённые в Edit, однако не ищет почему?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.08.2014, 11:11
Помогаю со студенческими работами здесь

Поиск кратчайшего пути между заданными вершинами
Добрый день. Прошу помощи. Есть задача :"Даны два слова и словарь. Требуется построить цепочку слов от первого слова до второго, в котором...

Извлечение подстроки, ограниченной заданными символами
Приветствую всех. Необходимо извлечь из строки подстроку, которая ограничена заданными символами (символом) слева, справа или и слева и...

Поиск расстояния между заданными символами
Мне нужна найти ростояния n - символов в слове. Например есть текст: Человек ек мак екіі. Если ми вибрали букви ек Должно видать такие...

Поиск подстроки между определенными символами
Здравствуйте! Помогите плиз,как это можно реализовать. Допустим у нас есть строка: Мы с мамой пошли в парк им. Горького, а потом...

Получение подстроки между символами #
Добро Пожаловать! Вобщем вопрос в том что я хочу сделать Если приходит сообщение и оно имеет ## тогда то что в ## например добавилось в...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru