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

Написать собственную реализацию стандартной функции strstr (исправить) - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.69
clarkson
Сообщений: n/a
16.12.2012, 12:56     Написать собственную реализацию стандартной функции strstr (исправить) #1
Ребят нужна помощь. Надо срочно сдать лабу. По чему ничего не выводит? что надо точно чтобы выводилось, по заданию?
Вот само задание: А. Написать собственную реализацию стандартной функции strstr.
Функция strstr описана в заголовочном файле <string.h> как
char *strstr (const char *string, const char *strCharSet);
и предназначена для поиска строки strCharSet в строке string. Возвращается указатель на начальный
символ первого вхождения strCharSet в строку string или NULL, если string не содержит strCharSet.

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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#include <iostream>
#include <string.h>
#include <stdio.h>
using namespace std;
 
char*  my_strstr (const char *str1, const char *str2)
{
    
        char *cp = (char *) str1;
        char *s1, *s2;
    
        if ( !*str2 )
            return((char *)str1);
 
        while (*cp)
        {
                s1 = cp;
                s2 = (char *) str2;
 
                while ( *s1 && *s2 && !(*s1-*s2) )
                        s1++, s2++;
 
                if (!*s2)
                        return(cp);
 
                cp++;
        }
 
        return(NULL);
 
}
 
int main()
{
 
    char s1[] = "aaab";
    char f1[] = "aab";
    char f2[] = "aaa";
    char s2[] = "aab ggf";
    char f3[] = " g";
    char s3[] = "a";
 
 
    if (strstr(s1, f1) != my_strstr(s1, f1))
        printf("test1 fail ", strstr(s1, f1), my_strstr(s1, f1));
    else
        printf(".");
    
 
    if (strstr(s1, f2) != my_strstr(s1, f2))
        printf("test2 fail", strstr(s1, f2), my_strstr(s1, f2));
    else
        printf(".");
    
 
    if (strstr(s2, f3) != my_strstr(s2, f3))
        printf("test5 fail ", strstr(s2, f3), my_strstr(s2, f3));
    else
        printf(".");
 
 
    if (strstr(s3, f1) != my_strstr(s3, f1))
        printf("tst5 fail", strstr(s3, f1), my_strstr(s3, f1));
    else
        printf(" ");
 
 
    printf(" ");
 
    system("pause");
    return 0;
}
До части В не добрался, если можете, то помогите.

В. Строка состоит из слов, разделенных одним или несколькими пробелами. Найти
количество слов, содержащих только символы латинского алфавита, а среди них –
количество слов с равным числом гласных и согласных букв.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2012, 12:56     Написать собственную реализацию стандартной функции strstr (исправить)
Посмотрите здесь:

Замен стандартной функции stricmp C++
C++ как использовать функции string::find или функция strstr(str1 ,str2)
Написать собственную реализацию стандартной функции strstr C++
C++ Насчет стандартной функции time()
C++ Написать реализацию перегруженных функций
C++ Написать аналог strstr
Создать собственную реализацию функции rtrim C++
C++ Написать реализацию перегрузки функции

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 06:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru