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

Функция поиска слов в строке - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Изменение выведенного цвета в консоли http://www.cyberforum.ru/cpp-beginners/thread830871.html
Привет всем, кто желает помочь. Такая ситуация, нужно изменить цветовые характеристики уже выведенного в консоли текста, по принципу команды "color XX", которая меняет весь окрас текста и фона, но у меня возникла потребность в изменении по координатам определённых участков текста. Например: От Х=5 до Х=10 Игрика=15, окрасить в желтый PS. Повторный вывод текста не предлагать, чтобы...
C++ Curl и Zlib скачивание и распаковка архива Скачал cur и zlib, подключаю к проекту: #include "curl/include/curl/curl.h" #include "zlib/zlib.h" #pragma comment(lib,"curl/lib/libcurl.lib") функция: CURL *curl; curl = curl_easy_init(); if(curl) { http://www.cyberforum.ru/cpp-beginners/thread830869.html
C++ Подключение dll в MSVS 2010 C++
Код: __declspec(dllimport) int summe(int a); void main(){ summe(3); } При компиляции выдает следующую ошибку: error LNK2019: unresolved external symbol "__declspec(dllimport) int __cdecl summe(int)" (__imp_?summe@@YAHH@Z) referenced in function _main. Сам dll файл был создан в Delphi, вот код: library mydll;
Звук на колонках, форма которого задаётся уравнением C++
Здравствуйте. Моя задача состоит в следующем: мне нужно подавать на колонки сигнал, форма которого задаётся уравнением. К примеру, введя U=U0*cos(f0*t), я должен получить монотонный звук высоты f0, а введя U=U1*cos(f1*t)+U2*cos(f2*t)+U3*cos(f3*t), должно звучать трезвучие. U-характерная величина, означающая отклонения напряжения в динамике. Как это реализовать в с++?
C++ Матрицы не хотят умножаться (внутри практически рабочий код!) http://www.cyberforum.ru/cpp-beginners/thread830833.html
Добрый день! Есть задание: Задан массив C(n) . Сформировать матрицу A(n,n),как произведение массивов C и СT и матрицу B(n,n), элементы которой вычислить по формуле: Aij=Bij/max|A|. Решить матричное уравнение XA=3B-E, где E – единичная max. Массив нужно вводить из файла. Ввод из файла работает, массивы перемножаются, а вот при создании матрицы B появляются неприятности. В общем код рабочий,...
C++ Программа CUBE У декартовій системі координат розташовано куб, координати вер-шин котрого дорівнюють невід'ємним цілим числам, що не перевищують 15. Одна з вершин куба збігається з початком координат. Скласти про-граму CUBE, яка обчислювала б квадрат відстані на поверхні куба між двома точками, заданими координатами. (Відстанню між двома точками на поверхні куба називається найменша довжина ламаної, що з'єднує... подробнее

Показать сообщение отдельно
sword7i
3 / 3 / 0
Регистрация: 25.09.2012
Сообщений: 92
07.04.2013, 19:26     Функция поиска слов в строке
Добрый вечер. Мне нужно написать следующие функции:

Функция void delNsymbl TCHAR* str, int n) получает строку, число n и удаляет из строки первые n символов.
Функция TCHAR* poisk1BigAlfa (TCHAR* str), получив строку, ищет в ней адрес первого прописного буквенного латинского символа, за которым следует или перед которым стоит его строчный символ. Если таких символов нет, функция возвращает адресный 0.
Функция int smallSymb(TCHAR* str) получает строку str и удаляет прописные символы, если они дублируют рядом стоящий строчный символ. Функция возвращает количество удаленных символов.
Функцию, которая в строке с пробелами ищет первое слово (первую последовательность символов, не разделенных пробелами).
Функцию обработки фразы, которая получает строку-фразу и, выделяя в ней последовательно все слова, каждое из них обрабатывает по правилу вашего варианта. Функция формирует новую строку-фразу из тех слов, которые подверглись изменению.
В этой функции склеивание из полученных в процессе обработки слов результирующей фразы осуществить стандартной функцией: strncpy.
Первые три функции я написал и отладил без проблем:

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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <string.h>
#include <ctype.h>
#include <math.h>
#define TCHAR char
 
void delNsymbl (TCHAR* str, int n)
{
    for (TCHAR* p=str+n;*str=*p;str++,p++);
}
 
TCHAR* poisk1BigAlfa (TCHAR* str)
{
    int dif=32;
    for (int i=0;i<strlen(str);i++)
    {
        if (abs(*(str+i)-*(str+i+1))==dif)
        {
            if (isupper(*(str+i)))
                return str+i;
            else
                return str+i+1;
        }
    }
    return 0;
}
 
int smallSymb(TCHAR* str)
{
    int kol=0;
    TCHAR* BigA;
    do
    {
        BigA=poisk1BigAlfa(str);
        if (BigA)
        {
            delNsymbl(BigA,1);
            kol++;
        }
    }
    while (BigA);
    return kol;
}
 
 
 
#include <iostream>
using namespace std;
void main ()
{
    TCHAR* res;
    TCHAR stroka[100];
    cin>>stroka;
    res=obrabotka(stroka);
    cout<<res<<endl;
    system("pause");
}
, а дальше возникли трудности, функцию поиска слова не получается заставить работать:

C++
1
2
3
4
5
6
7
8
9
10
11
TCHAR* findWord (TCHAR*str)
{
    TCHAR* p;
    for (;*str=' ';str++);
    if (*str)
    {
    p=str;
    return p;
    }
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru